[PATCH] PM: fix a lockdep warning in runtime.c

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

 



This patch (as1309) fixes a lockdep warning in
__pm_runtime_set_status().  This is the one place where the runtime PM
framework acquires a nested power.lock, and the nesting is never more
than one deep.

Signed-off-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

---

If anybody is using the runtime PM framework in 2.6.32 then this 
should be pushed before the final release.



Index: usb-2.6/drivers/base/power/runtime.c
===================================================================
--- usb-2.6.orig/drivers/base/power/runtime.c
+++ usb-2.6/drivers/base/power/runtime.c
@@ -10,6 +10,8 @@
 #include <linux/pm_runtime.h>
 #include <linux/jiffies.h>
 
+#define	RPM_LOCK_PARENT		1
+
 static int __pm_runtime_resume(struct device *dev, bool from_wq);
 static int __pm_request_idle(struct device *dev);
 static int __pm_request_resume(struct device *dev);
@@ -793,7 +795,7 @@ int __pm_runtime_set_status(struct devic
 	}
 
 	if (parent) {
-		spin_lock(&parent->power.lock);
+		spin_lock_nested(&parent->power.lock, RPM_LOCK_PARENT);
 
 		/*
 		 * It is invalid to put an active child under a parent that is

_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux