Re: [PATCH v2 08/13] ARM: use a function table for determining instructioninterpreter actions

From: David Long
Date: Thu Nov 14 2013 - 10:17:48 EST


On 11/13/13 12:11, Jon Medhurst (Tixy) wrote:
On Tue, 2013-10-15 at 17:04 -0400, David Long wrote:
From: "David A. Long" <dave.long@xxxxxxxxxx>

When interpreting instructions use a client-supplied array of functions
to take action. This array can then be provided by krpobes, uprobes, or

'to take action' sounds a bit weird to me, how about 'to specify
actions'?

I've changed it to:

ARM: use a function table for determining instruction interpreter actions

Make the instruction interpreter call back to semantic action functions
through a function pointer array provided by the invoker. The interpreter
decodes the instructions into groups and uses the group number to index
into the supplied array. kprobes and uprobes code will each supply their
own array of functions.


possibly some other client subsystem. The interpreter assigns a group
number to each recognized instruction and invokes the corresponding action
function.

Signed-off-by: David A. Long <dave.long@xxxxxxxxxx>
---
arch/arm/kernel/Makefile | 2 +-
arch/arm/kernel/kprobes-arm.c | 41 ++
arch/arm/kernel/kprobes-common.c | 3 +-
arch/arm/kernel/kprobes-thumb.c | 1016 ++++----------------------------------
arch/arm/kernel/kprobes.c | 10 +-
arch/arm/kernel/kprobes.h | 14 +-
arch/arm/kernel/probes-arm.c | 114 ++---
arch/arm/kernel/probes-arm.h | 37 ++
arch/arm/kernel/probes-thumb.c | 875 ++++++++++++++++++++++++++++++++
arch/arm/kernel/probes-thumb.h | 136 +++++
arch/arm/kernel/probes.c | 9 +-
arch/arm/kernel/probes.h | 15 +-
12 files changed, 1288 insertions(+), 984 deletions(-)
create mode 100644 arch/arm/kernel/probes-thumb.c
create mode 100644 arch/arm/kernel/probes-thumb.h

As I mentioned in comments to patch 7, this patch seems to accidentally
include the thumb code reorg of moving code from kprobes-thumb.c to
probes-thumb.c

Fixed for next version (as described in previous email).

-dl

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/