sched: sched_clock_cpu() based cpu_clock(), lockdep fix
Vegard Nossum reported: > WARNING: at kernel/lockdep.c:2738 check_flags+0x142/0x160() which happens due to: unsigned long long cpu_clock(int cpu) { unsigned long long clock; unsigned long flags; raw_local_irq_save(flags); as lower level functions can take locks, we must not do that, use proper lockdep-annotated irq save/restore. Reported-by: Vegard Nossum <vegard.nossum@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
4c9fe8ad81
commit
2d452c9b10
@ -250,9 +250,9 @@ unsigned long long cpu_clock(int cpu)
|
|||||||
unsigned long long clock;
|
unsigned long long clock;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
raw_local_irq_save(flags);
|
local_irq_save(flags);
|
||||||
clock = sched_clock_cpu(cpu);
|
clock = sched_clock_cpu(cpu);
|
||||||
raw_local_irq_restore(flags);
|
local_irq_restore(flags);
|
||||||
|
|
||||||
return clock;
|
return clock;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user