]> 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)
commitb975585a28feb1b7e279a5bd61f0ca31e8d6c648
tree1359ba3dbc655254d5bde1a04322b985ca5f5a26
parentb298a7a2c7eeecb18f93bc0868548d2210450996
partially revert "xen: Remove event channel notification through Xen PCI platform device"

Commit 1cdbf31d1281 ("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