[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen stable-4.3] unmodified_drivers: enable unplug per default



commit d4d9332a1c3fbd3f1802ffb24a95429cfc1512ed
Author:     Olaf Hering <olaf@xxxxxxxxx>
AuthorDate: Mon Sep 23 16:28:52 2013 +0200
Commit:     Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Mon Sep 23 16:28:52 2013 +0200

    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.
    Also recognize the dev_unplug=never parameter, which provides the
    default before this patch.
    
    Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
    master commit: df17e9c889c48c9c10aa3f9dd0bb11077f54efc4
    master date: 2013-09-20 11:41:08 +0200
---
 .../linux-2.6/platform-pci/platform-pci.c          |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c 
b/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
index cfd0536..163b168 100644
--- a/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
+++ b/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
@@ -66,7 +66,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,][never] (default is 
'all')\n");
 
 struct pci_dev *xen_platform_pdev;
 
@@ -290,6 +290,10 @@ static int check_platform_magic(struct device *dev, long 
ioaddr, long iolen)
        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)
@@ -302,6 +306,8 @@ static int check_platform_magic(struct device *dev, long 
ioaddr, long iolen)
                        unplug |= UNPLUG_AUX_IDE_DISKS;
                else if (!strcmp(p, "nics"))
                        unplug |= UNPLUG_ALL_NICS;
+               else if (!strcmp(p, "never"))
+                       unplug = 0;
                else
                        dev_warn(dev, "unrecognised option '%s' "
                                 "in module parameter 'dev_unplug'\n", p);
--
generated by git-patchbot for /home/xen/git/xen.git#stable-4.3

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.