ftrace: fix cmdline tracing
authorIngo Molnar <mingo@elte.hu>
Mon, 12 May 2008 19:20:53 +0000 (21:20 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 23 May 2008 19:07:57 +0000 (21:07 +0200)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
kernel/trace/trace_sched_switch.c

index 5555b906a6669b2a2c3892626026d8b68b17f87b..5a217e863586e3ba2bfcc609892fa6ba0786c41d 100644 (file)
@@ -29,6 +29,8 @@ ctx_switch_func(void *__rq, struct task_struct *prev, struct task_struct *next)
        if (!tracer_enabled)
                return;
 
+       tracing_record_cmdline(prev);
+
        local_irq_save(flags);
        cpu = raw_smp_processor_id();
        data = tr->data[cpu];
@@ -56,6 +58,8 @@ wakeup_func(void *__rq, struct task_struct *wakee, struct task_struct *curr)
        if (!tracer_enabled)
                return;
 
+       tracing_record_cmdline(curr);
+
        local_irq_save(flags);
        cpu = raw_smp_processor_id();
        data = tr->data[cpu];
@@ -75,8 +79,6 @@ void
 ftrace_ctx_switch(void *__rq, struct task_struct *prev,
                  struct task_struct *next)
 {
-       tracing_record_cmdline(prev);
-
        /*
         * If tracer_switch_func only points to the local
         * switch func, it still needs the ptr passed to it.
@@ -93,8 +95,6 @@ void
 ftrace_wake_up_task(void *__rq, struct task_struct *wakee,
                    struct task_struct *curr)
 {
-       tracing_record_cmdline(curr);
-
        wakeup_func(__rq, wakee, curr);
 
        /*