Subject: [PATCH v2 08/13] ARM: use a function table for determining instruction interpreter actions

From: [email-masked] (David Long)
Date: Thu, 14 Nov 2013 10:17:35 -0500

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" <[email-masked]>
>>
>> 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 <[email-masked]>
>> ---
>>   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