]> git.baikalelectronics.ru Git - kernel.git/commit
partially revert "xen: Remove event channel notification through Xen PCI platform...
authorStefano Stabellini <sstabellini@kernel.org>
Fri, 13 Jan 2017 18:07:23 +0000 (10:07 -0800)
committerStefano Stabellini <sstabellini@kernel.org>
Fri, 13 Jan 2017 18:07:23 +0000 (10:07 -0800)
commitaf0f0a13d23961a0c5b94c95641e80d3e5ad969c
tree1359ba3dbc655254d5bde1a04322b985ca5f5a26
parent98f843d6779756405c70bc76d30f73879c5c379f
partially revert "xen: Remove event channel notification through Xen PCI platform device"

Commit b2a7f1f8bb13 ("xen: Remove event channel notification through Xen
PCI platform device") broke Linux when booting as Dom0 on Xen in a
nested Xen environment (Xen installed inside a Xen VM). In this
scenario, Linux is a PV guest, but at the same time it uses the
platform-pci driver to receive notifications from L0 Xen. vector
callbacks are not available because L1 Xen doesn't allow them.

Partially revert the offending commit, by restoring IRQ based
notifications for PV guests only. I restored only the code which is
strictly needed and replaced the xen_have_vector_callback checks within
it with xen_pv_domain() checks.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/xen/platform-pci.c