From: Peter Zijlstra Date: Fri, 30 Oct 2020 11:49:45 +0000 (+0100) Subject: perf: Fix get_recursion_context() X-Git-Tag: v4.4.244~34 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57f9654bde66ce31b61aab3cae5a7e3ab33ac880;p=thirdparty%2Fkernel%2Fstable.git perf: Fix get_recursion_context() [ Upstream commit ce0f17fc93f63ee91428af10b7b2ddef38cd19e5 ] One should use in_serving_softirq() to detect SoftIRQ context. Fixes: 96f6d4444302 ("perf_counter: avoid recursion") Signed-off-by: Peter Zijlstra (Intel) Link: https://lkml.kernel.org/r/20201030151955.120572175@infradead.org Signed-off-by: Sasha Levin --- diff --git a/kernel/events/internal.h b/kernel/events/internal.h index 2bbad9c1274c3..8baa3121e7a6b 100644 --- a/kernel/events/internal.h +++ b/kernel/events/internal.h @@ -193,7 +193,7 @@ static inline int get_recursion_context(int *recursion) rctx = 3; else if (in_irq()) rctx = 2; - else if (in_softirq()) + else if (in_serving_softirq()) rctx = 1; else rctx = 0;