lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 23 Sep 2021 08:48:43 -0700 (PDT) From: Stefano Stabellini <sstabellini@...nel.org> To: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@...m.com> cc: Juergen Gross <jgross@...e.com>, Stefano Stabellini <sstabellini@...nel.org>, "xen-devel@...ts.xenproject.org" <xen-devel@...ts.xenproject.org>, "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, "boris.ostrovsky@...cle.com" <boris.ostrovsky@...cle.com>, "julien@....org" <julien@....org>, "jbeulich@...e.com" <jbeulich@...e.com>, Oleksandr Andrushchenko <andr2000@...il.com> Subject: Re: [PATCH 2/2] xen-pciback: prepare for the split for stub and PV On Thu, 23 Sep 2021, Oleksandr Andrushchenko wrote: > On 23.09.21 12:05, Juergen Gross wrote: > > On 23.09.21 11:02, Oleksandr Andrushchenko wrote: > >> > >> On 23.09.21 00:10, Stefano Stabellini wrote: > >>> On Wed, 22 Sep 2021, Oleksandr Andrushchenko wrote: > >>>> --- a/drivers/xen/xen-pciback/xenbus.c > >>>> +++ b/drivers/xen/xen-pciback/xenbus.c > >>>> @@ -743,6 +743,9 @@ const struct xen_pcibk_backend *__read_mostly xen_pcibk_backend; > >>>> int __init xen_pcibk_xenbus_register(void) > >>>> { > >>>> + if (!xen_pcibk_pv_support()) > >>>> + return 0; > >>> Is this truly enough to stop the PV backend from initializing? Have you > >>> actually tested it to make sure? If it works, amazing! I am quite happy > >>> about this approach :-) > >> > >> Well, I put some logs into the driver and saw nothing obvious pointing > >> > >> to any backend activities (probably this is also because I don't have any > >> > >> frontend). I see that the xenbus driver is not registered. In XenStore I see: > >> > >> root@...0:~# xenstore-ls -f | grep pci > >> /local/domain/0/backend/pci = "" > >> /local/domain/0/backend/pci/2 = "" > >> /local/domain/0/backend/pci/2/0 = "" > >> /local/domain/0/backend/pci/2/0/frontend = "/local/domain/2/device/pci/0" > >> /local/domain/0/backend/pci/2/0/frontend-id = "2" > >> /local/domain/0/backend/pci/2/0/online = "1" > >> /local/domain/0/backend/pci/2/0/state = "1" > >> /local/domain/0/backend/pci/2/0/domain = "DomU" > >> /local/domain/0/backend/pci/2/0/key-0 = "0000:03:00.0" > >> /local/domain/0/backend/pci/2/0/dev-0 = "0000:03:00.0" > >> /local/domain/0/backend/pci/2/0/opts-0 = "msitranslate=0,power_mgmt=0,permissive=0,rdm_policy=strict" > >> /local/domain/0/backend/pci/2/0/state-0 = "1" > >> /local/domain/0/backend/pci/2/0/num_devs = "1" > >> /local/domain/2/device/pci = "" > >> /local/domain/2/device/pci/0 = "" > >> /local/domain/2/device/pci/0/backend = "/local/domain/0/backend/pci/2/0" > >> /local/domain/2/device/pci/0/backend-id = "0" > >> /local/domain/2/device/pci/0/state = "1" > >> /libxl/pci = "" > >> /libxl/pci/0000-03-00-0 = "" > >> /libxl/pci/0000-03-00-0/domid = "2" > >> > >> But IIUIC these come from the toolstack > >> > >> @Juergen, do you know how to check if the backend is indeed not running > >> > >> or the above should be enough to prove? > > > > I don't see how the backend could be running without being registered > > with xenbus. It won't receive any watches, so there is no way a > > connection with a frontend could be established. > > This is my understanding too, so the only change I've put in patch I removed > > register/unregister. It seems this is just enough and the patch should be ok as is Fantastic! Thanks for checking.
Powered by blists - more mailing lists