All of lore.kernel.org
 help / color / mirror / Atom feed
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.