On 08/26/2016 05:55 PM, KarimAllah Ahmed wrote: > Ever since commit 254d1a3f02eb ("xen/pv-on-hvm kexec: shutdown watches > from old kernel") using the INTx interrupt from Xen PCI platform device for > event channel notification would just lockup the guest during bootup. > postcore_initcall now calls xs_reset_watches which will eventually try to read > a value from XenStore and will get stuck on read_reply at XenBus forever since > the platform driver is not probed yet and its INTx interrupt handler is not > registered yet. That means that the guest can not be notified at this moment of > any pending event channels and none of the per-event handlers will ever be > invoked (including the XenStore one) and the reply will never be picked up by > the kernel. > > The exact stack where things get stuck during xenbus_init: > > -xenbus_init > -xs_init > -xs_reset_watches > -xenbus_scanf > -xenbus_read > -xs_single > -xs_single > -xs_talkv > > Vector callbacks have always been the favourite event notification mechanism > since their introduction in commit 38e20b07efd5 ("x86/xen: event channels > delivery on HVM.") and the vector callback feature has always been advertised > for quite some time by Xen that's why INTx was broken for several years now > without impacting anyone. > > Luckily this also means that event channel notification through INTx is > basically dead-code which can be safely removed without impacting anybody since > it has been effectively disabled for more than 4 years with nobody complaining > about it (at least as far as I'm aware of). > > This commit removes event channel notification through Xen PCI platform device. > > Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> > Cc: David Vrabel <david.vrabel@xxxxxxxxxx> > Cc: Juergen Gross <jgross@xxxxxxxx> > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Cc: Ingo Molnar <mingo@xxxxxxxxxx> > Cc: "H. Peter Anvin" <hpa@xxxxxxxxx> > Cc: x86@xxxxxxxxxx > Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> > Cc: Julien Grall <julien.grall@xxxxxxxxxx> > Cc: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> > Cc: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx> > Cc: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > Cc: linux-pci@xxxxxxxxxxxxxxx > Cc: Anthony Liguori <aliguori@xxxxxxxxxx> > Signed-off-by: KarimAllah Ahmed <karahmed@xxxxxxxxx> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html