[PATCH v3 6/6] powerpc/64s: Blacklist rtas entry/exit from kprobes
Naveen N. Rao
naveen.n.rao at linux.vnet.ibm.com
Fri Jun 23 02:52:44 AEST 2017
On 2017/06/22 01:48PM, Nicholas Piggin wrote:
> On Thu, 22 Jun 2017 00:08:42 +0530
> "Naveen N. Rao" <naveen.n.rao at linux.vnet.ibm.com> wrote:
>
> > We can't take traps with relocation off, so blacklist enter_rtas() and
> > rtas_return_loc(). However, instead of blacklisting all of enter_rtas(),
> > introduce a new symbol __enter_rtas from where on we can't take a trap
> > and blacklist that.
> >
> > Signed-off-by: Naveen N. Rao <naveen.n.rao at linux.vnet.ibm.com>
> > ---
> > arch/powerpc/kernel/entry_64.S | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S
> > index d376f07153d7..49c35450f399 100644
> > --- a/arch/powerpc/kernel/entry_64.S
> > +++ b/arch/powerpc/kernel/entry_64.S
> > @@ -1076,6 +1076,8 @@ _GLOBAL(enter_rtas)
> > rldicr r9,r9,MSR_SF_LG,(63-MSR_SF_LG)
> > ori r9,r9,MSR_IR|MSR_DR|MSR_FE0|MSR_FE1|MSR_FP|MSR_RI|MSR_LE
> > andc r6,r0,r9
> > +
> > +__enter_rtas:
> > sync /* disable interrupts so SRR0/1 */
> > mtmsrd r0 /* don't get trashed */
>
> Along the lines of the system call patch... For consistency, could we
> put the __enter_rtas right after mtmsrd? And I wonder if we shoul
Sure.
> come up with a common prefix or postfix naming convention for these
> such labels used to control probing?
We could, but I am not sure it will help much. On the other hand, such
symbols may make backtraces pretty distracting.
I'm just using '__' as a prefix to make it less distracting, though it
isn't all that great either. I'm clearly hopeless with names o_O
The other option is to just blacklist entire functions, but we will then
lose the ability to probe in many places where we may have wanted to.
>
> How do opal calls avoid tracing?
It doesn't yet. I'm still going through the initial few symbols and
identifying what needs blacklisting. Opal is further down.
Thanks,
Naveen
More information about the Linuxppc-dev
mailing list