From: tixy@yxit.co.uk (Tixy)
To: linux-arm-kernel@lists.infradead.org
Subject: [GIT PULL] ARM: kprobes: Add support for Thumb-2
Date: Wed, 13 Jul 2011 19:06:05 +0100 [thread overview]
Message-ID: <1310580365.2258.73.camel@computer2> (raw)
Hi Russell
Please can you pull these for the next merge window?
These changes add Thumb-2 support to kprobes and have been reviewed and
Acked by Nicolas Pitre.
Thanks
--
Jon Medhurst (usually know as Tixy)
The following changes since commit 620917de59eeb934b9f8cf35cc2d95c1ac8ed0fc:
Linux 3.0-rc7 (2011-07-11 16:51:52 -0700)
are available in the git repository at:
git://git.yxit.co.uk/linux kprobes-thumb
Jon Medhurst (75):
ARM: Thumb-2: Fix exception return sequence to restore stack correctly
ARM: Thumb-2: Support Thumb-2 in undefined instruction handler
ARM: kprobes: Rename kprobes-decode.c to kprobes-arm.c
ARM: kprobes: Split out internal parts of kprobes.h
ARM: kprobes: Add kprobes-common.c
ARM: kprobes: Move is_writeback define to header file.
ARM: kprobes: Move find_str_pc_offset into kprobes-common.c
ARM: kprobes: Make str_pc_offset a constant on ARMv7
ARM: kprobes: Make kprobes framework work on Thumb-2 kernels
ARM: kprobes: Add Thumb instruction decoding stubs
ARM: Kconfig: Allow kprobes on Thumb-2 kernels
ARM: kprobes: Add Thumb breakpoint support
ARM: kprobes: Add condition code checking to Thumb emulation
ARM: kprobes: Add it_advance()
ARM: kprobes: Don't trigger probes on conditional instructions when condition is false
ARM: kprobes: Use conditional breakpoints for ARM probes
ARM: kprobes: Add hooks to override singlestep()
ARM: kprobes: Extend arch_specific_insn to add pointer to emulated instruction
ARM: kprobes: Infrastructure for table driven decoding of CPU instructions
ARM: kprobes: Decode 16-bit Thumb hint instructions
ARM: ptrace: Add APSR_MASK definition to ptrace.h
ARM: kprobes: Decode 16-bit Thumb data-processing instructions
ARM: kprobes: Add bx_write_pc()
ARM: kprobes: Decode 16-bit Thumb BX and BLX instructions
ARM: kprobes: Decode 16-bit Thumb special data instructions
ARM: kprobes: Decode 16-bit Thumb load and store instructions
ARM: kprobes: Decode 16-bit Thumb PC- and SP-relative address instructions
ARM: kprobes: Decode 16-bit Thumb CBZ and bit manipulation instructions
ARM: kprobes: Decode 16-bit Thumb PUSH and POP instructions
ARM: kprobes: Decode 16-bit Thumb IT instruction
ARM: kprobes: Reject 16-bit Thumb SVC and UNDEFINED instructions
ARM: kprobes: Decode 16-bit Thumb branch instructions
ARM: kprobes: Reject 16-bit Thumb SETEND, CPS and BKPT instructions
ARM: kprobes: Decode 32-bit Thumb hint instructions
ARM: kprobes: Add load_write_pc()
ARM: kprobes: Add common decoding function for LDM and STM
ARM: kprobes: Optimise emulation of LDM and STM
ARM: kprobes: Decode 32-bit Thumb load/store multiple instructions
ARM: kprobes: Decode 32-bit Thumb load/store dual and load/store exclusive instructions
ARM: kprobes: Decode 32-bit Thumb table branch instructions
ARM: kprobes: Decode 32-bit Thumb data-processing (shifted register) instructions
ARM: kprobes: Decode 32-bit Thumb data-processing (modified immediate) instructions
ARM: kprobes: Decode 32-bit Thumb data-processing (plain binary immediate) instructions
ARM: kprobes: Decode 32-bit miscellaneous control instructions
ARM: kprobes: Decode 32-bit Thumb branch instructions
ARM: kprobes: Reject 32-bit Thumb coprocessor and SIMD instructions
ARM: kprobes: Decode 32-bit Thumb memory hint instructions
ARM: kprobes: Decode 32-bit Thumb load/store single data item instructions
ARM: kprobes: Decode 32-bit Thumb data-processing (register) instructions
ARM: kprobes: Decode 32-bit Thumb long multiply and divide instructions
ARM: kprobes: Decode 32-bit Thumb multiply and absolute difference instructions
ARM: kprobes: Migrate ARM space_1111 to decoding tables
ARM: kprobes: Add alu_write_pc()
ARM: kprobes: Add BLX macro
ARM: kprobes: Add emulate_rd12rn16rm0rs8_rwflags()
ARM: kprobes: Migrate ARM data-processing (register) instructions to decoding tables
ARM: kprobes: Add emulate_ldrdstrd()
ARM: kprobes: Migrate ARM LDRD and STRD to decoding tables
ARM: kprobes: Migrate ARM space_cccc_000x to decoding tables
ARM: kprobes: Migrate ARM space_cccc_001x to decoding tables
ARM: kprobes: Add emulate_rd12rn16rm0_rwflags_nopc()
ARM: kprobes: Migrate ARM space_cccc_0110__1 to decoding tables
ARM: kprobes: Migrate ARM space_cccc_0111__1 to decoding tables
ARM: kprobes: Migrate ARM space_cccc_01xx to decoding tables
ARM: kprobes: Migrate ARM space_cccc_100x to decoding tables
ARM: kprobes: Migrate remaining instruction decoding functions to tables
ARM: kprobes: Add emulate_rd16rn12rm0rs8_rwflags_nopc()
ARM: kprobes: Replace use of prep_emulate_rd12rn16rm0_wflags()
ARM: kprobes: Add emulate_rd12rm0_noflags_nopc()
ARM: kprobes: Add emulate_rdlo12rdhi16rn0rm8_rwflags_nopc()
ARM: kprobes: Add new versions of emulate_ldr() and emulate_str()
ARM: kprobes: Use new versions of emulate_ldr() and emulate_str()
ARM: kprobes: Reject probing of unprivileged load and store instructions
ARM: kprobes: Decode ARM preload (immediate) instructions
ARM: kprobes: Remove now unused code
arch/arm/Kconfig | 2 +-
arch/arm/include/asm/kprobes.h | 28 +-
arch/arm/include/asm/ptrace.h | 11 +-
arch/arm/kernel/Makefile | 7 +-
arch/arm/kernel/entry-header.S | 12 +-
arch/arm/kernel/kprobes-arm.c | 999 +++++++++++++++++++++++
arch/arm/kernel/kprobes-common.c | 577 +++++++++++++
arch/arm/kernel/kprobes-decode.c | 1670 --------------------------------------
arch/arm/kernel/kprobes-thumb.c | 1462 +++++++++++++++++++++++++++++++++
arch/arm/kernel/kprobes.c | 222 +++++-
arch/arm/kernel/kprobes.h | 420 ++++++++++
arch/arm/kernel/ptrace.c | 28 +-
arch/arm/kernel/traps.c | 17 +-
13 files changed, 3707 insertions(+), 1748 deletions(-)
create mode 100644 arch/arm/kernel/kprobes-arm.c
create mode 100644 arch/arm/kernel/kprobes-common.c
delete mode 100644 arch/arm/kernel/kprobes-decode.c
create mode 100644 arch/arm/kernel/kprobes-thumb.c
create mode 100644 arch/arm/kernel/kprobes.h
reply other threads:[~2011-07-13 18:06 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1310580365.2258.73.camel@computer2 \
--to=tixy@yxit.co.uk \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.