mbox series

[0/5] powerpc/kprobes: preempt related changes and cleanups

Message ID cover.1666262278.git.naveen.n.rao@linux.vnet.ibm.com (mailing list archive)
Headers show
Series powerpc/kprobes: preempt related changes and cleanups | expand

Message

Naveen N. Rao Oct. 20, 2022, 5:28 p.m. UTC
This series attempts to address some of the concerns raised in 
https://github.com/linuxppc/issues/issues/440

The last two patches are minor cleanups in related kprobes code.

- Naveen


Naveen N. Rao (5):
  powerpc/kprobes: Remove preempt disable around call to get_kprobe() in
    arch_prepare_kprobe()
  powerpc/kprobes: Have optimized_callback() use preempt_enable()
  powerpc/kprobes: Use preempt_enable() rather than the no_resched
    variant
  powerpc/kprobes: Setup consistent pt_regs across kprobes, optprobes
    and KPROBES_ON_FTRACE
  powerpc/kprobes: Remove unnecessary headers from kprobes

 arch/powerpc/kernel/kprobes-ftrace.c        |  4 ----
 arch/powerpc/kernel/kprobes.c               | 16 ++++++----------
 arch/powerpc/kernel/optprobes.c             |  2 +-
 arch/powerpc/kernel/optprobes_head.S        |  5 +----
 arch/powerpc/kernel/trace/ftrace_mprofile.S |  6 ++++++
 5 files changed, 14 insertions(+), 19 deletions(-)


base-commit: 7dc2a00fdd44a4d0c3bac9fd10558b3933586a0c

Comments

Nicholas Piggin Nov. 7, 2022, 11:24 a.m. UTC | #1
+linux-arch

FYI most preempt_enable_no_resched() calls outside of core scheduler
code come from kprobes copy-and-paste, and can possibly be fixed in
similar ways as this series. It's a bit of a footgun API that should
be banished from outside kernel/sched/, at least without an explicit
comment for each case that explains the need and how the missed
resched is resolved or not applicable.

Thanks,
Nick

On Fri Oct 21, 2022 at 3:28 AM AEST, Naveen N. Rao wrote:
> This series attempts to address some of the concerns raised in 
> https://github.com/linuxppc/issues/issues/440
>
> The last two patches are minor cleanups in related kprobes code.
>
> - Naveen
>
>
> Naveen N. Rao (5):
>   powerpc/kprobes: Remove preempt disable around call to get_kprobe() in
>     arch_prepare_kprobe()
>   powerpc/kprobes: Have optimized_callback() use preempt_enable()
>   powerpc/kprobes: Use preempt_enable() rather than the no_resched
>     variant
>   powerpc/kprobes: Setup consistent pt_regs across kprobes, optprobes
>     and KPROBES_ON_FTRACE
>   powerpc/kprobes: Remove unnecessary headers from kprobes
>
>  arch/powerpc/kernel/kprobes-ftrace.c        |  4 ----
>  arch/powerpc/kernel/kprobes.c               | 16 ++++++----------
>  arch/powerpc/kernel/optprobes.c             |  2 +-
>  arch/powerpc/kernel/optprobes_head.S        |  5 +----
>  arch/powerpc/kernel/trace/ftrace_mprofile.S |  6 ++++++
>  5 files changed, 14 insertions(+), 19 deletions(-)
>
>
> base-commit: 7dc2a00fdd44a4d0c3bac9fd10558b3933586a0c
> -- 
> 2.38.0
Michael Ellerman Nov. 30, 2022, 9:24 a.m. UTC | #2
On Thu, 20 Oct 2022 22:58:56 +0530, Naveen N. Rao wrote:
> This series attempts to address some of the concerns raised in
> https://github.com/linuxppc/issues/issues/440
> 
> The last two patches are minor cleanups in related kprobes code.
> 
> - Naveen
> 
> [...]

Applied to powerpc/next.

[1/5] powerpc/kprobes: Remove preempt disable around call to get_kprobe() in arch_prepare_kprobe()
      https://git.kernel.org/powerpc/c/2fa9482334b0593b7edc371a13c0cca81daaa89e
[2/5] powerpc/kprobes: Have optimized_callback() use preempt_enable()
      https://git.kernel.org/powerpc/c/04ec5d5782fb346c291a05a2efe59483d8ada4c4
[3/5] powerpc/kprobes: Use preempt_enable() rather than the no_resched variant
      https://git.kernel.org/powerpc/c/266b1991a433cd55bb86a933216b3f6762737d47

cheers