Commit e1f8450854d69f0291882804406ea1bab3ca44b4

Authored by Ingo Molnar
1 parent 3f2aa307c4

sched: Fix sched::sched_stat_wait tracepoint field

This weird perf trace output:

  cc1-9943  [001]  2802.059479616: sched_stat_wait: task: as:9944 wait: 2801938766276 [ns]

Is caused by setting one component field of the delta to zero
a bit too early. Move it to later.

( Note, this does not affect the NEW_FAIR_SLEEPERS interactivity bug,
  it's just a reporting bug in essence. )

Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Nikos Chantziaras <realnc@arcor.de>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Mike Galbraith <efault@gmx.de>
LKML-Reference: <4AA93D34.8040500@arcor.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

Showing 1 changed file with 1 additions and 2 deletions Side-by-side Diff

... ... @@ -545,14 +545,13 @@
545 545 schedstat_set(se->wait_count, se->wait_count + 1);
546 546 schedstat_set(se->wait_sum, se->wait_sum +
547 547 rq_of(cfs_rq)->clock - se->wait_start);
548   - schedstat_set(se->wait_start, 0);
549   -
550 548 #ifdef CONFIG_SCHEDSTATS
551 549 if (entity_is_task(se)) {
552 550 trace_sched_stat_wait(task_of(se),
553 551 rq_of(cfs_rq)->clock - se->wait_start);
554 552 }
555 553 #endif
  554 + schedstat_set(se->wait_start, 0);
556 555 }
557 556  
558 557 static inline void