Commit d02f40e8 authored by Linus Torvalds's avatar Linus Torvalds

Enable minimal per-device resume tracing

This is the minimal resume trace code to find which device resume (if
any) results in problems.  Usually, you'd use the information this
generates as a starting point to adding more fine-grained trace event
points.
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent eb71c87a
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
*/ */
#include <linux/device.h> #include <linux/device.h>
#include <linux/resume-trace.h>
#include "../base.h" #include "../base.h"
#include "power.h" #include "power.h"
...@@ -23,6 +24,8 @@ int resume_device(struct device * dev) ...@@ -23,6 +24,8 @@ int resume_device(struct device * dev)
{ {
int error = 0; int error = 0;
TRACE_DEVICE(dev);
TRACE_RESUME(0);
down(&dev->sem); down(&dev->sem);
if (dev->power.pm_parent if (dev->power.pm_parent
&& dev->power.pm_parent->power.power_state.event) { && dev->power.pm_parent->power.power_state.event) {
...@@ -36,6 +39,7 @@ int resume_device(struct device * dev) ...@@ -36,6 +39,7 @@ int resume_device(struct device * dev)
error = dev->bus->resume(dev); error = dev->bus->resume(dev);
} }
up(&dev->sem); up(&dev->sem);
TRACE_RESUME(error);
return error; return error;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment