Message ID | alpine.DEB.2.22.394.2307211609140.3118466@ubuntu-linux-20-04-desktop (mailing list archive) |
---|---|
State | Accepted |
Commit | 0d8f7cc8057890db08c54fe610d8a94af59da082 |
Headers | show |
Series | xenbus: check xen_domain in xenbus_probe_initcall | expand |
On 22.07.23 02:13, Stefano Stabellini wrote: Hello Stefano > The same way we already do in xenbus_init. > Fixes the following warning: > > [ 352.175563] Trying to free already-free IRQ 0 > [ 352.177355] WARNING: CPU: 1 PID: 88 at kernel/irq/manage.c:1893 free_irq+0xbf/0x350 > [...] > [ 352.213951] Call Trace: > [ 352.214390] <TASK> > [ 352.214717] ? __warn+0x81/0x170 > [ 352.215436] ? free_irq+0xbf/0x350 > [ 352.215906] ? report_bug+0x10b/0x200 > [ 352.216408] ? prb_read_valid+0x17/0x20 > [ 352.216926] ? handle_bug+0x44/0x80 > [ 352.217409] ? exc_invalid_op+0x13/0x60 > [ 352.217932] ? asm_exc_invalid_op+0x16/0x20 > [ 352.218497] ? free_irq+0xbf/0x350 > [ 352.218979] ? __pfx_xenbus_probe_thread+0x10/0x10 > [ 352.219600] xenbus_probe+0x7a/0x80 > [ 352.221030] xenbus_probe_thread+0x76/0xc0 > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> > Tested-by: Petr Mladek <pmladek@suse.com> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> I guess this wants to gain the Fixes tag: Fixes: 5b3353949e89 ("xen: add support for initializing xenstore later as HVM domain") > > diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c > index 58b732dcbfb8..e9bd3ed70108 100644 > --- a/drivers/xen/xenbus/xenbus_probe.c > +++ b/drivers/xen/xenbus/xenbus_probe.c > @@ -811,6 +812,9 @@ static int xenbus_probe_thread(void *unused) > > static int __init xenbus_probe_initcall(void) > { > + if (!xen_domain()) > + return -ENODEV; > + > /* > * Probe XenBus here in the XS_PV case, and also XS_HVM unless we > * need to wait for the platform PCI device to come up or
On 22.07.23 15:00, Oleksandr Tyshchenko wrote: > > > On 22.07.23 02:13, Stefano Stabellini wrote: > > Hello Stefano > > >> The same way we already do in xenbus_init. >> Fixes the following warning: >> >> [ 352.175563] Trying to free already-free IRQ 0 >> [ 352.177355] WARNING: CPU: 1 PID: 88 at kernel/irq/manage.c:1893 free_irq+0xbf/0x350 >> [...] >> [ 352.213951] Call Trace: >> [ 352.214390] <TASK> >> [ 352.214717] ? __warn+0x81/0x170 >> [ 352.215436] ? free_irq+0xbf/0x350 >> [ 352.215906] ? report_bug+0x10b/0x200 >> [ 352.216408] ? prb_read_valid+0x17/0x20 >> [ 352.216926] ? handle_bug+0x44/0x80 >> [ 352.217409] ? exc_invalid_op+0x13/0x60 >> [ 352.217932] ? asm_exc_invalid_op+0x16/0x20 >> [ 352.218497] ? free_irq+0xbf/0x350 >> [ 352.218979] ? __pfx_xenbus_probe_thread+0x10/0x10 >> [ 352.219600] xenbus_probe+0x7a/0x80 >> [ 352.221030] xenbus_probe_thread+0x76/0xc0 >> >> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> >> Tested-by: Petr Mladek <pmladek@suse.com> > > > Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> > > I guess this wants to gain the Fixes tag: > > Fixes: 5b3353949e89 ("xen: add support for initializing xenstore later > as HVM domain") I'll add it when committing. Juergen
On 22.07.23 01:13, Stefano Stabellini wrote: > The same way we already do in xenbus_init. > Fixes the following warning: > > [ 352.175563] Trying to free already-free IRQ 0 > [ 352.177355] WARNING: CPU: 1 PID: 88 at kernel/irq/manage.c:1893 free_irq+0xbf/0x350 > [...] > [ 352.213951] Call Trace: > [ 352.214390] <TASK> > [ 352.214717] ? __warn+0x81/0x170 > [ 352.215436] ? free_irq+0xbf/0x350 > [ 352.215906] ? report_bug+0x10b/0x200 > [ 352.216408] ? prb_read_valid+0x17/0x20 > [ 352.216926] ? handle_bug+0x44/0x80 > [ 352.217409] ? exc_invalid_op+0x13/0x60 > [ 352.217932] ? asm_exc_invalid_op+0x16/0x20 > [ 352.218497] ? free_irq+0xbf/0x350 > [ 352.218979] ? __pfx_xenbus_probe_thread+0x10/0x10 > [ 352.219600] xenbus_probe+0x7a/0x80 > [ 352.221030] xenbus_probe_thread+0x76/0xc0 > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com> > Tested-by: Petr Mladek <pmladek@suse.com> Pushed to xen/tip.git for-linus-6.5a Juergen
diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c index 58b732dcbfb8..e9bd3ed70108 100644 --- a/drivers/xen/xenbus/xenbus_probe.c +++ b/drivers/xen/xenbus/xenbus_probe.c @@ -811,6 +812,9 @@ static int xenbus_probe_thread(void *unused) static int __init xenbus_probe_initcall(void) { + if (!xen_domain()) + return -ENODEV; + /* * Probe XenBus here in the XS_PV case, and also XS_HVM unless we * need to wait for the platform PCI device to come up or