]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/base/core.c
ARM: OMAP: mcbsp: Fix possible memory corruption
[mv-sheeva.git] / drivers / base / core.c
index 82c865452c7080d180ec6a453ab1efb3e988dac3..919daa7cd5b1db3443c65863cc07c20c830f680b 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"
@@ -1743,6 +1744,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);