From: Steven Rostedt on
From: Li Zefan <lizf(a)cn.fujitsu.com>

# echo 1 > events/enable
# echo global > trace_clock

------------[ cut here ]------------
WARNING: at kernel/lockdep.c:3162 check_flags+0xb2/0x190()
....
---[ end trace 3f86734a89416623 ]---
possible reason: unannotated irqs-on.
....

There's no reason to use the raw_local_irq_save() in trace_clock_global.
The local_irq_save() version is fine, and does not cause the bug in lockdep.

Acked-by: Peter Zijlstra <a.p.zijlstra(a)chello.nl>
Signed-off-by: Li Zefan <lizf(a)cn.fujitsu.com>
LKML-Reference: <4BA97FA1.7030606(a)cn.fujitsu.com>
Signed-off-by: Steven Rostedt <rostedt(a)goodmis.org>
---
kernel/trace/trace_clock.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/trace/trace_clock.c b/kernel/trace/trace_clock.c
index 6fbfb8f..9d589d8 100644
--- a/kernel/trace/trace_clock.c
+++ b/kernel/trace/trace_clock.c
@@ -84,7 +84,7 @@ u64 notrace trace_clock_global(void)
int this_cpu;
u64 now;

- raw_local_irq_save(flags);
+ local_irq_save(flags);

this_cpu = raw_smp_processor_id();
now = cpu_clock(this_cpu);
@@ -110,7 +110,7 @@ u64 notrace trace_clock_global(void)
arch_spin_unlock(&trace_clock_struct.lock);

out:
- raw_local_irq_restore(flags);
+ local_irq_restore(flags);

return now;
}
--
1.7.0


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/