PM / sleep / x86: Fix crash on graph trace through x86 suspend
[pandora-kernel.git] / arch / x86 / kernel / acpi / sleep.c
index 103b6ab..0d56eaa 100644 (file)
@@ -15,6 +15,7 @@
 #include <asm/pgtable.h>
 #include <asm/cacheflush.h>
 
+#include <linux/ftrace.h>
 #include "realmode/wakeup.h"
 #include "sleep.h"
 
@@ -102,7 +103,13 @@ int acpi_suspend_lowlevel(void)
        saved_magic = 0x123456789abcdef0L;
 #endif /* CONFIG_64BIT */
 
+       /*
+        * Pause/unpause graph tracing around do_suspend_lowlevel as it has
+        * inconsistent call/return info after it jumps to the wakeup vector.
+        */
+       pause_graph_tracing();
        do_suspend_lowlevel();
+       unpause_graph_tracing();
        return 0;
 }