[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20161103070318.GI6949@naverao1-tp.localdomain>
Date: Thu, 3 Nov 2016 12:33:18 +0530
From: "Naveen N. Rao" <naveen.n.rao@...ux.vnet.ibm.com>
To: Ravi Bangoria <ravi.bangoria@...ux.vnet.ibm.com>
Cc: linuxppc-dev@...ts.ozlabs.org, linux-kernel@...r.kernel.org,
mpe@...erman.id.au, benh@...nel.crashing.org, paulus@...ba.org,
lsorense@...lub.uwaterloo.ca, oohall@...il.com, ast@...nel.org,
chris@...troguy.com, aneesh.kumar@...ux.vnet.ibm.com,
bsingharora@...il.com, anton@...ba.org,
paul.gortmaker@...driver.com, bauerman@...ux.vnet.ibm.com,
viro@...iv.linux.org.uk, christophe.leroy@....fr, duwe@....de,
oss@...error.net
Subject: Re: [PATCH 0/3] powerpc: Emulation support for load/store
instructions on LE
On 2016/11/02 02:23PM, Ravi Bangoria wrote:
> emulate_step is the basic infrastructure which is used by number of other
> kernel infrastructures like kprobe, hw-breakpoint(data breakpoint) etc.
> In case of kprobe, enabling emulation of load/store instructions will
> speedup the execution of probed instruction. In case of kernel-space
> breakpoint, causative instruction is first get emulated before executing
> user registered handler. If emulation fails, hw-breakpoint is disabled
> with error. As emulate_step does not support load/store instructions on
> LE, kernel-space hw-breakpoint infrastructure is broken on LE.
>
> emulate_step() uses a number of underlying kernel functions that were
> initially not enabled for LE. This has been rectified since. So, fix
> emulate_step() for LE for the corresponding instructions.
>
> Also add selftest which will run at boot if CONFIG_KPROBES_SANITY_TEST
> and CONFIG_PPC64 is set.
>
> Changes w.r.t. RFC:
> - Enable emulation support for all types of (Normal, Floating Point,
> Vector and Vector Scalar) load/store instructions.
> - Introduce selftest to test emulate_step for load/store instructions.
>
> Ravi Bangoria (3):
> powerpc: Emulation support for load/store instructions on LE
> powerpc: Add encoding for couple of load/store instructions
> powerpc: emulate_step test for load/store instructions
>
> arch/powerpc/include/asm/ppc-opcode.h | 7 +
> arch/powerpc/include/asm/sstep.h | 8 +
> arch/powerpc/kernel/kprobes.c | 2 +
> arch/powerpc/lib/Makefile | 4 +
> arch/powerpc/lib/sstep.c | 20 --
> arch/powerpc/lib/test_emulate_step.c | 439 ++++++++++++++++++++++++++++++++++
> 6 files changed, 460 insertions(+), 20 deletions(-)
> create mode 100644 arch/powerpc/lib/test_emulate_step.c
Patch 2 can be folded into the third patch. Apart from that, and the
minor nit with patch 3, for this series:
Reviewed-by: Naveen N. Rao <naveen.n.rao@...ux.vnet.ibm.com>
Thanks,
Naveen
Powered by blists - more mailing lists