diff options
| author | David S. Miller <davem@davemloft.net> | 2011-08-07 23:20:26 -0700 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2011-08-07 23:20:26 -0700 |
| commit | 19fd61785a580c60cba900c5171bfadb57dd5056 (patch) | |
| tree | 1e491fb014be0dc03f4b6755bb94e73afd38c455 /drivers/base/power/runtime.c | |
| parent | 57569d0e12eaf31717e295960cd2a26f626c8e5b (diff) | |
| parent | 8028837d71ba9904b17281b40f94b93e947fbe38 (diff) | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'drivers/base/power/runtime.c')
| -rw-r--r-- | drivers/base/power/runtime.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c index 8dc247c974af..acb3f83b8079 100644 --- a/drivers/base/power/runtime.c +++ b/drivers/base/power/runtime.c @@ -226,11 +226,17 @@ static int rpm_idle(struct device *dev, int rpmflags) callback = NULL; if (callback) { - spin_unlock_irq(&dev->power.lock); + if (dev->power.irq_safe) + spin_unlock(&dev->power.lock); + else + spin_unlock_irq(&dev->power.lock); callback(dev); - spin_lock_irq(&dev->power.lock); + if (dev->power.irq_safe) + spin_lock(&dev->power.lock); + else + spin_lock_irq(&dev->power.lock); } dev->power.idle_notification = false; |
