]> rtime.felk.cvut.cz Git - can-eth-gw-linux.git/blobdiff - drivers/base/core.c
Merge branch 'driver-core-next' into Linux 3.2
[can-eth-gw-linux.git] / drivers / base / core.c
index a31ea193fba04b7f6fe4258ee71ff8874834eec5..4dac58aa4a0a1c7e3fd5b0aab1b786a4b32f14fc 100644 (file)
@@ -22,6 +22,7 @@
 #include <linux/kallsyms.h>
 #include <linux/mutex.h>
 #include <linux/async.h>
+#include <linux/pm_runtime.h>
 
 #include "base.h"
 #include "power/power.h"
@@ -1796,6 +1797,10 @@ void device_shutdown(void)
                list_del_init(&dev->kobj.entry);
                spin_unlock(&devices_kset->list_lock);
 
+               /* Don't allow any more runtime suspends */
+               pm_runtime_get_noresume(dev);
+               pm_runtime_barrier(dev);
+
                if (dev->bus && dev->bus->shutdown) {
                        dev_dbg(dev, "shutdown\n");
                        dev->bus->shutdown(dev);