The patch titled PM: Add pm_trace switch has been added to the -mm tree. Its filename is pm-add-pm_trace-switch.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: PM: Add pm_trace switch From: "Rafael J. Wysocki" <rjw@xxxxxxx> Add the pm_trace attribute in /sys/power which has to be explicitly set to one to really enable the "PM tracing" code compiled in when CONFIG_PM_TRACE is set (which modifies the machine's CMOS clock in unpredictable ways). Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx> Acked-by: Pavel Machek <pavel@xxxxxx> Cc: Linus Torvalds <torvalds@xxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/linux/resume-trace.h | 24 ++++++++++++++---------- kernel/power/main.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 10 deletions(-) diff -puN include/linux/resume-trace.h~pm-add-pm_trace-switch include/linux/resume-trace.h --- a/include/linux/resume-trace.h~pm-add-pm_trace-switch +++ a/include/linux/resume-trace.h @@ -3,21 +3,25 @@ #ifdef CONFIG_PM_TRACE +extern int pm_trace_enabled; + struct device; extern void set_trace_device(struct device *); extern void generate_resume_trace(void *tracedata, unsigned int user); #define TRACE_DEVICE(dev) set_trace_device(dev) -#define TRACE_RESUME(user) do { \ - void *tracedata; \ - asm volatile("movl $1f,%0\n" \ - ".section .tracedata,\"a\"\n" \ - "1:\t.word %c1\n" \ - "\t.long %c2\n" \ - ".previous" \ - :"=r" (tracedata) \ - : "i" (__LINE__), "i" (__FILE__)); \ - generate_resume_trace(tracedata, user); \ +#define TRACE_RESUME(user) do { \ + if (pm_trace_enabled) { \ + void *tracedata; \ + asm volatile("movl $1f,%0\n" \ + ".section .tracedata,\"a\"\n" \ + "1:\t.word %c1\n" \ + "\t.long %c2\n" \ + ".previous" \ + :"=r" (tracedata) \ + : "i" (__LINE__), "i" (__FILE__)); \ + generate_resume_trace(tracedata, user); \ + } \ } while (0) #else diff -puN kernel/power/main.c~pm-add-pm_trace-switch kernel/power/main.c --- a/kernel/power/main.c~pm-add-pm_trace-switch +++ a/kernel/power/main.c @@ -17,6 +17,7 @@ #include <linux/pm.h> #include <linux/console.h> #include <linux/cpu.h> +#include <linux/resume-trace.h> #include "power.h" @@ -285,10 +286,39 @@ static ssize_t state_store(struct subsys power_attr(state); +#ifdef CONFIG_PM_TRACE +int pm_trace_enabled; + +static ssize_t pm_trace_show(struct subsystem * subsys, char * buf) +{ + return sprintf(buf, "%d\n", pm_trace_enabled); +} + +static ssize_t +pm_trace_store(struct subsystem * subsys, const char * buf, size_t n) +{ + int val; + + if (sscanf(buf, "%d", &val) == 1) { + pm_trace_enabled = !!val; + return n; + } + return -EINVAL; +} + +power_attr(pm_trace); + +static struct attribute * g[] = { + &state_attr.attr, + &pm_trace_attr.attr, + NULL, +}; +#else static struct attribute * g[] = { &state_attr.attr, NULL, }; +#endif /* CONFIG_PM_TRACE */ static struct attribute_group attr_group = { .attrs = g, _ Patches currently in -mm which might be from rjw@xxxxxxx are git-cifs.patch pm-define-pm_event_prethaw.patch pm-pci-and-ide-handle-pm_event_prethaw.patch pm-video-drivers-and-pm_event_prethaw.patch pm-usb-hcds-use-pm_event_prethaw.patch pm-usb-hcds-use-pm_event_prethaw-fix.patch pm-issue-pm_event_prethaw.patch swsusp-write-timer.patch swsusp-write-speedup.patch swsusp-read-timer.patch swsusp-read-speedup.patch swsusp-read-speedup-fix.patch swsusp-read-speedup-cleanup.patch swsusp-read-speedup-cleanup-2.patch swsusp-read-speedup-fix-fix-2.patch swsusp-clean-up-browsing-of-pfns.patch swsusp-struct-snapshot_handle-cleanup.patch make-swsusp-avoid-memory-holes-and-reserved-memory-regions-on-x86_64.patch disable-cpu-hotplug-during-suspend-2.patch swsusp-fix-mark_free_pages.patch swsusp-reorder-memory-allocating-functions.patch swsusp-fix-alloc_pagedir.patch clean-up-suspend-header.patch change-the-name-of-pagedir_nosave.patch swsusp-introduce-some-helpful-constants.patch swsusp-introduce-memory-bitmaps.patch swsusp-use-memory-bitmaps-during-resume.patch swsusp-use-memory-bitmaps-during-resume-fix.patch swsusp-use-suspend_console.patch pm-make-it-possible-to-disable-console-suspending.patch pm-make-it-possible-to-disable-console-suspending-fix.patch i386-detect-clock-skew-during-suspend.patch pm-add-pm_trace-switch.patch reiserfs-make-sure-all-dentries-refs-are-released-before-calling-kill_block_super-try-2.patch ide-reprogram-disk-pio-timings-on-resume.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html