Files
linux/arch/arm64/include/asm
Chunyan Zhang 2b9743441a arm64: use preempt_disable_notrace in _percpu_read/write
When debug preempt or preempt tracer is enabled, preempt_count_add/sub()
can be traced by function and function graph tracing, and
preempt_disable/enable() would call preempt_count_add/sub(), so in Ftrace
subsystem we should use preempt_disable/enable_notrace instead.

In the commit 345ddcc882 ("ftrace: Have set_ftrace_pid use the bitmap
like events do") the function this_cpu_read() was added to
trace_graph_entry(), and if this_cpu_read() calls preempt_disable(), graph
tracer will go into a recursive loop, even if the tracing_on is
disabled.

So this patch change to use preempt_enable/disable_notrace instead in
this_cpu_read().

Since Yonghui Yang helped a lot to find the root cause of this problem,
so also add his SOB.

Signed-off-by: Yonghui Yang <mark.yang@spreadtrum.com>
Signed-off-by: Chunyan Zhang <zhang.chunyan@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2016-09-09 12:34:47 +01:00
..
2016-07-25 13:41:01 +02:00
2014-04-18 11:40:33 +02:00
2015-10-28 19:09:17 +00:00
2014-11-05 09:03:25 +01:00
2016-06-21 17:07:09 +01:00
2016-03-04 18:19:17 +00:00
2016-05-31 16:41:51 +08:00
2016-06-27 16:31:25 +01:00
2016-06-14 11:16:27 +02:00
2016-07-03 23:41:27 +02:00
2016-02-24 14:57:27 +00:00
2015-05-19 15:27:42 +01:00
2014-11-28 10:24:59 +00:00
2015-10-12 17:46:36 +01:00
2014-07-10 11:06:00 +01:00