All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND PATCH v2 0/2] fix & prevent the missing preemption disabling
@ 2021-10-13  3:37 ` 王贇
  0 siblings, 0 replies; 21+ messages in thread
From: 王贇 @ 2021-10-13  3:37 UTC (permalink / raw)
  To: Guo Ren, Steven Rostedt, Ingo Molnar, James E.J. Bottomley,
	Helge Deller, Michael Ellerman, Benjamin Herrenschmidt,
	Paul Mackerras, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Thomas Gleixner, Borislav Petkov, x86, H. Peter Anvin,
	Josh Poimboeuf, Jiri Kosina, Miroslav Benes, Petr Mladek,
	Joe Lawrence, Colin Ian King, Masami Hiramatsu,
	Peter Zijlstra (Intel),
	Nicholas Piggin, Jisheng Zhang, linux-csky, linux-kernel,
	linux-parisc, linuxppc-dev, linux-riscv, live-patching

The testing show that perf_ftrace_function_call() are using smp_processor_id()
with preemption enabled, all the checking on CPU could be wrong after preemption.

As Peter point out, the section between ftrace_test_recursion_trylock/unlock()
pair require the preemption to be disabled as 'Documentation/trace/ftrace-uses.rst'
explained, but currently the work is done outside of the helpers.

Patch 1/2 will make sure preemption disabled after trylock() succeed,
patch 2/2 will do smp_processor_id() checking after trylock to address the
issue.

v1: https://lore.kernel.org/all/8c7de46d-9869-aa5e-2bb9-5dbc2eda395e@linux.alibaba.com/

Michael Wang (2):
  ftrace: disable preemption between ftrace_test_recursion_trylock/unlock()
  ftrace: do CPU checking after preemption disabled

 arch/csky/kernel/probes/ftrace.c     |  2 --
 arch/parisc/kernel/ftrace.c          |  2 --
 arch/powerpc/kernel/kprobes-ftrace.c |  2 --
 arch/riscv/kernel/probes/ftrace.c    |  2 --
 arch/x86/kernel/kprobes/ftrace.c     |  2 --
 include/linux/trace_recursion.h      | 22 +++++++++++++++++++++-
 kernel/livepatch/patch.c             |  6 ------
 kernel/trace/trace_event_perf.c      |  6 +++---
 kernel/trace/trace_functions.c       |  5 -----
 9 files changed, 24 insertions(+), 25 deletions(-)

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2021-10-13 14:24 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-13  3:37 [RESEND PATCH v2 0/2] fix & prevent the missing preemption disabling 王贇
2021-10-13  3:37 ` 王贇
2021-10-13  3:37 ` [RESEND PATCH v2 1/2] ftrace: disable preemption between ftrace_test_recursion_trylock/unlock() 王贇
2021-10-13  3:37   ` 王贇
2021-10-13  7:55   ` Miroslav Benes
2021-10-13  7:55     ` Miroslav Benes
2021-10-13  7:55     ` Miroslav Benes
2021-10-13  8:11     ` 王贇
2021-10-13  8:11       ` 王贇
2021-10-13  8:11       ` 王贇
2021-10-13  8:25       ` Miroslav Benes
2021-10-13  8:25         ` Miroslav Benes
2021-10-13  8:25         ` Miroslav Benes
2021-10-13  8:34         ` 王贇
2021-10-13  8:34           ` 王贇
2021-10-13  8:34           ` 王贇
2021-10-13 14:24           ` Steven Rostedt
2021-10-13 14:24             ` Steven Rostedt
2021-10-13 14:24             ` Steven Rostedt
2021-10-13  3:38 ` [RESEND PATCH v2 2/2] ftrace: do CPU checking after preemption disabled 王贇
2021-10-13  3:38   ` 王贇

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.