diff options
Diffstat (limited to 'arch/x86/include/asm/resume-trace.h')
-rw-r--r-- | arch/x86/include/asm/resume-trace.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/x86/include/asm/resume-trace.h b/arch/x86/include/asm/resume-trace.h new file mode 100644 index 000000000000..e39376d7de50 --- /dev/null +++ b/arch/x86/include/asm/resume-trace.h | |||
@@ -0,0 +1,21 @@ | |||
1 | #ifndef ASM_X86__RESUME_TRACE_H | ||
2 | #define ASM_X86__RESUME_TRACE_H | ||
3 | |||
4 | #include <asm/asm.h> | ||
5 | |||
6 | #define TRACE_RESUME(user) \ | ||
7 | do { \ | ||
8 | if (pm_trace_enabled) { \ | ||
9 | const void *tracedata; \ | ||
10 | asm volatile(_ASM_MOV " $1f,%0\n" \ | ||
11 | ".section .tracedata,\"a\"\n" \ | ||
12 | "1:\t.word %c1\n\t" \ | ||
13 | _ASM_PTR " %c2\n" \ | ||
14 | ".previous" \ | ||
15 | :"=r" (tracedata) \ | ||
16 | : "i" (__LINE__), "i" (__FILE__)); \ | ||
17 | generate_resume_trace(tracedata, user); \ | ||
18 | } \ | ||
19 | } while (0) | ||
20 | |||
21 | #endif /* ASM_X86__RESUME_TRACE_H */ | ||