On Thu, 22 Jun 2017 00:08:42 +0530 "Naveen N. Rao" <naveen.n....@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....@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 come up with a common prefix or postfix naming convention for these such labels used to control probing? How do opal calls avoid tracing? Thanks, Nick