Thread (22 messages) 22 messages, 7 authors, 2012-06-12

Re: [PATCH 2/2] [POWERPC] uprobes: powerpc port

flat view

From: Ananth N Mavinakayanahalli <hidden>
Date: 2012-06-08 06:07:45
Also in: lkml

On Fri, Jun 08, 2012 at 03:51:54PM +1000, Michael Ellerman wrote:
On Fri, 2012-06-08 at 10:06 +0530, Ananth N Mavinakayanahalli wrote:
quoted
On Wed, Jun 06, 2012 at 11:08:04AM -0700, Jim Keniston wrote:
quoted
On Wed, 2012-06-06 at 15:05 +0530, Ananth N Mavinakayanahalli wrote:
quoted
On Wed, Jun 06, 2012 at 11:27:02AM +0200, Peter Zijlstra wrote:
quoted
On Wed, 2012-06-06 at 14:51 +0530, Ananth N Mavinakayanahalli wrote:
...
quoted
quoted
For the kernel, the only ones that are off limits are rfi (return from
interrupt), mtmsr (move to msr). All other instructions can be probed.

Both those instructions are supervisor level, so we won't see them in
userspace at all; so we should be able to probe all user level
instructions.
Presumably rfi or mtmsr could show up in the instruction stream via an
erroneous or mischievous asm statement.  It'd be good to verify that you
handle that gracefully.
That'd be flagged elsewhere, by the architecture itself -- you'd get a
privileged instruciton exception if you try execute any instruction not
part of the UISA. I therefore don't think its a necessary check in the
uprobes code.
But you're not executing the instruction, you're passing it to
emulate_step(). Or am I missing something?
But MSR_PR=1 and hence emulate_step() will return -1 and hence we will
end up single-stepping using user_enable_single_step(). Same with rfid.

Ananth
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help