|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Xen crash on dom0 shutdown
There is a BUG_ON() at xen/arch/x86/physdev.c:169 which appears to
be dependent upon guest behavior (should close event channel before
un-mapping pirq), rather than on internal hypervisor state. In 2.6.18,
this likely goes unnoticed because pci_device_shutdown() only calls all
the driver shutdown routines. In newer kernels, however, it also calls
pci_msi_shutdown() and pci_msix_shutdown(), which remove all pirq
mappings. If now (which commonly appears to be the case for storage
drivers) an MSI/MSI-X driver has no shutdown handler (or one that
doesn't do much, because on native this is not causing any problems),
the assumption in Xen is violated and the hypervisor crashes.
Simply removing the BUG_ON() seems inappropriate, though. But I'm
uncertain whether it would be reasonable to call pirq_guest_unbind()
instead of the BUG_ON(), and if so, how to properly deal with
irq_desc[vector].lock (the immediate idea would be to factor out the
locking into a wrapper function, but an alternative would be to use
recursive locks, and perhaps there are other possibilities).
Thanks for any hints, Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] Xen crash on dom0 shutdown,
Jan Beulich <=
- Re: [Xen-devel] Xen crash on dom0 shutdown, Keir Fraser
- [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Jan Beulich
- Re: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Keir Fraser
- RE: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Jiang, Yunhong
- Re: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Keir Fraser
- RE: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Shan, Haitao
- RE: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Jiang, Yunhong
- Re: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Keir Fraser
- RE: [PATCH] Re: [Xen-devel] Xen crash on dom0 shutdown, Shan, Haitao
|
|
|
|
|