86c3c4dd54
`xendomains` systemd services xen.spec - remove unneeded patch, autoload is handled by PCI device, without PCI device xen_platform_pci would not work anyway xen.sles11sp1.fate311487.xen_platform_pci.dmistring.patch - Update our xen-3.0.4 version of unplug code in qemu-trad add comments about the usage of the code rename handler function reenable handlers for writing/reading from emulated PCI device - Change unplugging of emulated devices in PVonHVM guests Since 3.0.4 xen-platform-pci.ko triggerd the unplug by writing to the PCI space of the emulated PCI device. 3.3 introduced an official unplug protocol. The option to unplug wit the official protocol is disabled per default. Remove our version and enable the unplug via official protocol OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=268
40 lines
1.5 KiB
Diff
40 lines
1.5 KiB
Diff
From: Olaf Hering <olaf@aepfle.de>
|
|
Subject: [PATCH v2] unmodified_drivers: enable unplug per default
|
|
|
|
Since xen-3.3 an official unplug protocol for emulated hardware is
|
|
available in the toolstack. The pvops kernel does the unplug per
|
|
default, so it is safe to do it also in the drivers for forward ported
|
|
xenlinux.
|
|
Currently its required to load xen-platform-pci with the module
|
|
parameter dev_unplug=all, which is cumbersome.
|
|
|
|
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
|
---
|
|
unmodified_drivers/linux-2.6/platform-pci/platform-pci.c | 6 +++++-
|
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
|
|
Index: xen-4.3.0-testing/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
|
|
===================================================================
|
|
--- xen-4.3.0-testing.orig/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
|
|
+++ xen-4.3.0-testing/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
|
|
@@ -67,7 +67,7 @@ MODULE_LICENSE("GPL");
|
|
static char *dev_unplug;
|
|
module_param(dev_unplug, charp, 0644);
|
|
MODULE_PARM_DESC(dev_unplug, "Emulated devices to unplug: "
|
|
- "[all,][ide-disks,][aux-ide-disks,][nics]\n");
|
|
+ "[all,][ide-disks,][aux-ide-disks,][nics] (default is 'all')\n");
|
|
|
|
struct pci_dev *xen_platform_pdev;
|
|
|
|
@@ -291,6 +291,10 @@ static int check_platform_magic(struct d
|
|
short magic, unplug = 0;
|
|
char protocol, *p, *q, *err;
|
|
|
|
+ /* Unconditionally unplug everything */
|
|
+ if (!dev_unplug)
|
|
+ unplug = UNPLUG_ALL;
|
|
+
|
|
for (p = dev_unplug; p; p = q) {
|
|
q = strchr(dev_unplug, ',');
|
|
if (q)
|