Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 90653a84 authored by Naveen N. Rao's avatar Naveen N. Rao Committed by Michael Ellerman
Browse files

powerpc/64s: Blacklist rtas entry/exit from kprobes



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: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 15770a13
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -1091,6 +1091,8 @@ _GLOBAL(enter_rtas)
        rldicr  r9,r9,MSR_SF_LG,(63-MSR_SF_LG)
        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
	ori	r9,r9,MSR_IR|MSR_DR|MSR_FE0|MSR_FE1|MSR_FP|MSR_RI|MSR_LE
	andc	r6,r0,r9
	andc	r6,r0,r9

__enter_rtas:
	sync				/* disable interrupts so SRR0/1 */
	sync				/* disable interrupts so SRR0/1 */
	mtmsrd	r0			/* don't get trashed */
	mtmsrd	r0			/* don't get trashed */


@@ -1127,6 +1129,8 @@ rtas_return_loc:
	mtspr	SPRN_SRR1,r4
	mtspr	SPRN_SRR1,r4
	rfid
	rfid
	b	.	/* prevent speculative execution */
	b	.	/* prevent speculative execution */
_ASM_NOKPROBE_SYMBOL(__enter_rtas)
_ASM_NOKPROBE_SYMBOL(rtas_return_loc)


	.align	3
	.align	3
1:	.llong	rtas_restore_regs
1:	.llong	rtas_restore_regs