Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

perf: Fix get_recursion_context()

One should use in_serving_softirq() to detect SoftIRQ context.

Fixes: 96f6d4444302 ("perf_counter: avoid recursion")
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201030151955.120572175@infradead.org

+1 -1
+1 -1
kernel/events/internal.h
··· 211 211 rctx = 3; 212 212 else if (in_irq()) 213 213 rctx = 2; 214 - else if (in_softirq()) 214 + else if (in_serving_softirq()) 215 215 rctx = 1; 216 216 else 217 217 rctx = 0;