mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 13:53:33 +00:00
MIPS: Clear Cause.BD in instruction_pointer_set
[ Upstream commit 9d6e21ddf2
]
Clear Cause.BD after we use instruction_pointer_set to override
EPC.
This can prevent exception_epc check against instruction code at
new return address.
It won't be considered as "in delay slot" after epc being overridden
anyway.
Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
8082bccb7a
commit
581d99d2f6
1 changed files with 1 additions and 0 deletions
|
@ -60,6 +60,7 @@ static inline void instruction_pointer_set(struct pt_regs *regs,
|
||||||
unsigned long val)
|
unsigned long val)
|
||||||
{
|
{
|
||||||
regs->cp0_epc = val;
|
regs->cp0_epc = val;
|
||||||
|
regs->cp0_cause &= ~CAUSEF_BD;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Query offset/name of register from its name/offset */
|
/* Query offset/name of register from its name/offset */
|
||||||
|
|
Loading…
Reference in a new issue