* [GIT PULL] ARM kprobe updates
@ 2015-01-20 9:43 Jon Medhurst (Tixy)
2015-01-20 16:24 ` Russell King - ARM Linux
0 siblings, 1 reply; 3+ messages in thread
From: Jon Medhurst (Tixy) @ 2015-01-20 9:43 UTC (permalink / raw)
To: linux-arm-kernel
Hi Russell
Please consider pulling the following changes to ARM kprobes.
This consists of Wang Nan's implementation of optimized kprobes on ARM,
which use branch instructions to call the handler rather than using
undefined instructions as breakpoints. It also contains various fixes
and extensions to the test code which were discovered along the way.
The patch from Masami Hiramatsu is outside of arch/arm but as kprobes
maintainer he indicated that it was OK for this simple patch to go
through the ARM tree, if you are also amenable. (See
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/317948.html)
Thanks
The following changes since commit b1940cd21c0f4abdce101253e860feff547291b0:
Linux 3.19-rc3 (2015-01-05 17:05:20 -0800)
are available in the git repository at:
git://git.linaro.org/people/tixy/kernel.git kprobes
for you to fetch changes up to fb892bd0fdcb2e5eac9c105cf68def90396ed8cc:
ARM: kprobes: Eliminate test code's use of BX instruction on ARMv4 CPUs (2015-01-20 09:06:04 +0000)
----------------------------------------------------------------
Jon Medhurst (4):
ARM: kprobes: Add test cases for stack consuming instructions
ARM: kprobes: Fix unreliable MRS instruction tests
ARM: probes: Use correct action types for MOVW, SEV and WFI
ARM: kprobes: Eliminate test code's use of BX instruction on ARMv4 CPUs
Masami Hiramatsu (1):
kprobes: Pass the original kprobe for preparing optimized kprobe
Wang Nan (7):
ARM: probes: move all probe code to dedicate directory
ARM: kprobes: introduces checker
ARM: kprobes: collects stack consumption for store instructions
ARM: kprobes: disallow probing stack consuming instructions
ARM: kprobes: enable OPTPROBES for ARM 32
ARM: kprobes: check register usage for probed instruction.
ARM: optprobes: execute instruction during restoring if possible.
arch/arm/Kconfig | 1 +
arch/arm/Makefile | 1 +
arch/arm/{kernel => include/asm}/insn.h | 0
arch/arm/include/asm/kprobes.h | 33 +-
arch/arm/{kernel => include/asm}/patch.h | 0
arch/arm/include/asm/probes.h | 15 +
arch/arm/kernel/Makefile | 16 +-
arch/arm/kernel/entry-armv.S | 3 +-
arch/arm/kernel/ftrace.c | 3 +-
arch/arm/kernel/jump_label.c | 5 +-
arch/arm/kernel/kgdb.c | 3 +-
arch/arm/kernel/patch.c | 3 +-
arch/arm/probes/Makefile | 7 +
.../{kernel/probes-arm.c => probes/decode-arm.c} | 18 +-
.../{kernel/probes-arm.h => probes/decode-arm.h} | 9 +-
.../probes-thumb.c => probes/decode-thumb.c} | 16 +-
.../probes-thumb.h => probes/decode-thumb.h} | 10 +-
arch/arm/{kernel/probes.c => probes/decode.c} | 81 ++++-
arch/arm/{kernel/probes.h => probes/decode.h} | 13 +-
arch/arm/probes/kprobes/Makefile | 12 +
.../kprobes-arm.c => probes/kprobes/actions-arm.c} | 11 +-
.../kprobes/actions-common.c} | 4 +-
.../kprobes/actions-thumb.c} | 10 +-
arch/arm/probes/kprobes/checkers-arm.c | 192 +++++++++++
arch/arm/probes/kprobes/checkers-common.c | 101 ++++++
arch/arm/probes/kprobes/checkers-thumb.c | 110 ++++++
arch/arm/probes/kprobes/checkers.h | 55 +++
.../{kernel/kprobes.c => probes/kprobes/core.c} | 49 ++-
.../{kernel/kprobes.h => probes/kprobes/core.h} | 12 +-
arch/arm/probes/kprobes/opt-arm.c | 370 +++++++++++++++++++++
.../kprobes/test-arm.c} | 40 ++-
.../kprobes-test.c => probes/kprobes/test-core.c} | 46 ++-
.../kprobes-test.h => probes/kprobes/test-core.h} | 35 +-
.../kprobes/test-thumb.c} | 20 +-
arch/arm/probes/uprobes/Makefile | 1 +
.../uprobes-arm.c => probes/uprobes/actions-arm.c} | 8 +-
.../{kernel/uprobes.c => probes/uprobes/core.c} | 8 +-
.../{kernel/uprobes.h => probes/uprobes/core.h} | 0
arch/x86/kernel/kprobes/opt.c | 3 +-
include/linux/kprobes.h | 3 +-
kernel/kprobes.c | 4 +-
41 files changed, 1200 insertions(+), 131 deletions(-)
rename arch/arm/{kernel => include/asm}/insn.h (100%)
rename arch/arm/{kernel => include/asm}/patch.h (100%)
create mode 100644 arch/arm/probes/Makefile
rename arch/arm/{kernel/probes-arm.c => probes/decode-arm.c} (98%)
rename arch/arm/{kernel/probes-arm.h => probes/decode-arm.h} (92%)
rename arch/arm/{kernel/probes-thumb.c => probes/decode-thumb.c} (98%)
rename arch/arm/{kernel/probes-thumb.h => probes/decode-thumb.h} (90%)
rename arch/arm/{kernel/probes.c => probes/decode.c} (84%)
rename arch/arm/{kernel/probes.h => probes/decode.h} (97%)
create mode 100644 arch/arm/probes/kprobes/Makefile
rename arch/arm/{kernel/kprobes-arm.c => probes/kprobes/actions-arm.c} (98%)
rename arch/arm/{kernel/kprobes-common.c => probes/kprobes/actions-common.c} (98%)
rename arch/arm/{kernel/kprobes-thumb.c => probes/kprobes/actions-thumb.c} (98%)
create mode 100644 arch/arm/probes/kprobes/checkers-arm.c
create mode 100644 arch/arm/probes/kprobes/checkers-common.c
create mode 100644 arch/arm/probes/kprobes/checkers-thumb.c
create mode 100644 arch/arm/probes/kprobes/checkers.h
rename arch/arm/{kernel/kprobes.c => probes/kprobes/core.c} (94%)
rename arch/arm/{kernel/kprobes.h => probes/kprobes/core.h} (79%)
create mode 100644 arch/arm/probes/kprobes/opt-arm.c
rename arch/arm/{kernel/kprobes-test-arm.c => probes/kprobes/test-arm.c} (97%)
rename arch/arm/{kernel/kprobes-test.c => probes/kprobes/test-core.c} (98%)
rename arch/arm/{kernel/kprobes-test.h => probes/kprobes/test-core.h} (92%)
rename arch/arm/{kernel/kprobes-test-thumb.c => probes/kprobes/test-thumb.c} (97%)
create mode 100644 arch/arm/probes/uprobes/Makefile
rename arch/arm/{kernel/uprobes-arm.c => probes/uprobes/actions-arm.c} (97%)
rename arch/arm/{kernel/uprobes.c => probes/uprobes/core.c} (97%)
rename arch/arm/{kernel/uprobes.h => probes/uprobes/core.h} (100%)
^ permalink raw reply [flat|nested] 3+ messages in thread
* [GIT PULL] ARM kprobe updates
2015-01-20 9:43 [GIT PULL] ARM kprobe updates Jon Medhurst (Tixy)
@ 2015-01-20 16:24 ` Russell King - ARM Linux
2015-01-20 17:07 ` Jon Medhurst (Tixy)
0 siblings, 1 reply; 3+ messages in thread
From: Russell King - ARM Linux @ 2015-01-20 16:24 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, Jan 20, 2015 at 09:43:19AM +0000, Jon Medhurst (Tixy) wrote:
> Hi Russell
>
> Please consider pulling the following changes to ARM kprobes.
>
> This consists of Wang Nan's implementation of optimized kprobes on ARM,
> which use branch instructions to call the handler rather than using
> undefined instructions as breakpoints. It also contains various fixes
> and extensions to the test code which were discovered along the way.
>
> The patch from Masami Hiramatsu is outside of arch/arm but as kprobes
> maintainer he indicated that it was OK for this simple patch to go
> through the ARM tree, if you are also amenable. (See
> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/317948.html)
>
> Thanks
>
>
> The following changes since commit b1940cd21c0f4abdce101253e860feff547291b0:
>
> Linux 3.19-rc3 (2015-01-05 17:05:20 -0800)
>
> are available in the git repository at:
>
> git://git.linaro.org/people/tixy/kernel.git kprobes
Thanks, pulled, though it'll probably be two or so days before it
shows up in linux-next.
--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [GIT PULL] ARM kprobe updates
2015-01-20 16:24 ` Russell King - ARM Linux
@ 2015-01-20 17:07 ` Jon Medhurst (Tixy)
0 siblings, 0 replies; 3+ messages in thread
From: Jon Medhurst (Tixy) @ 2015-01-20 17:07 UTC (permalink / raw)
To: linux-arm-kernel
On Tue, 2015-01-20 at 16:24 +0000, Russell King - ARM Linux wrote:
> > The following changes since commit
> b1940cd21c0f4abdce101253e860feff547291b0:
> >
> > Linux 3.19-rc3 (2015-01-05 17:05:20 -0800)
> >
> > are available in the git repository at:
> >
> > git://git.linaro.org/people/tixy/kernel.git kprobes
>
> Thanks, pulled, though it'll probably be two or so days before it
> shows up in linux-next.
Thanks
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-01-20 17:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-20 9:43 [GIT PULL] ARM kprobe updates Jon Medhurst (Tixy)
2015-01-20 16:24 ` Russell King - ARM Linux
2015-01-20 17:07 ` Jon Medhurst (Tixy)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).