diff options
author | Rafael J. Wysocki <rjw@sisk.pl> | 2007-06-17 13:50:51 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-07-11 19:09:02 -0400 |
commit | 43a49f8baa6b0e7e5b68ed0ee141e1efacfd9ae6 (patch) | |
tree | 2759e89c277a3fa9dcb4d5787375356fad29ecc7 /drivers | |
parent | 1c3f7d1c79425dd8f627b8da139fd1855f096b6e (diff) |
PM: Do not check parent state in suspend and resume core code
The checks if the device's parent is in the right state done in
drivers/base/power/suspend.c and drivers/base/power/resume.c serve no particular
purpose, since if the parent is in a wrong power state, the device's suspend or
resume callbacks are supposed to return an error anyway. Moreover, they are
also useless from the sanity checking point of view, because they rely on the
code being checked to set dev->parent->power.power_state.event appropriately,
which need not happen if that code is buggy. For these reasons they can be
removed.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/base/power/resume.c | 7 | ||||
-rw-r--r-- | drivers/base/power/suspend.c | 7 |
2 files changed, 0 insertions, 14 deletions
diff --git a/drivers/base/power/resume.c b/drivers/base/power/resume.c index 0c9610688542..00fd84ae6e66 100644 --- a/drivers/base/power/resume.c +++ b/drivers/base/power/resume.c | |||
@@ -29,13 +29,6 @@ int resume_device(struct device * dev) | |||
29 | 29 | ||
30 | down(&dev->sem); | 30 | down(&dev->sem); |
31 | 31 | ||
32 | if (dev->parent && dev->parent->power.power_state.event) { | ||
33 | dev_err(dev, "PM: resume from %d, parent %s still %d\n", | ||
34 | dev->power.power_state.event, | ||
35 | dev->parent->bus_id, | ||
36 | dev->parent->power.power_state.event); | ||
37 | } | ||
38 | |||
39 | if (dev->bus && dev->bus->resume) { | 32 | if (dev->bus && dev->bus->resume) { |
40 | dev_dbg(dev,"resuming\n"); | 33 | dev_dbg(dev,"resuming\n"); |
41 | error = dev->bus->resume(dev); | 34 | error = dev->bus->resume(dev); |
diff --git a/drivers/base/power/suspend.c b/drivers/base/power/suspend.c index a3ff3944832a..26df9b231737 100644 --- a/drivers/base/power/suspend.c +++ b/drivers/base/power/suspend.c | |||
@@ -63,13 +63,6 @@ int suspend_device(struct device * dev, pm_message_t state) | |||
63 | dev_dbg(dev, "PM: suspend %d-->%d\n", | 63 | dev_dbg(dev, "PM: suspend %d-->%d\n", |
64 | dev->power.power_state.event, state.event); | 64 | dev->power.power_state.event, state.event); |
65 | } | 65 | } |
66 | if (dev->parent && dev->parent->power.power_state.event) { | ||
67 | dev_err(dev, | ||
68 | "PM: suspend %d->%d, parent %s already %d\n", | ||
69 | dev->power.power_state.event, state.event, | ||
70 | dev->parent->bus_id, | ||
71 | dev->parent->power.power_state.event); | ||
72 | } | ||
73 | 66 | ||
74 | if (dev->class && dev->class->suspend) { | 67 | if (dev->class && dev->class->suspend) { |
75 | suspend_device_dbg(dev, state, "class "); | 68 | suspend_device_dbg(dev, state, "class "); |