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 09:09:56 +0000 From: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@...m.com> To: Juergen Gross <jgross@...e.com>, Stefano Stabellini <sstabellini@...nel.org> CC: "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 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 > > > Juergen > Thank you, Oleksandr
Powered by blists - more mailing lists