]> git.baikalelectronics.ru Git - kernel.git/commit
ARCv2: entry: early return from exception need not clear U & DE bits
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>
Tue, 16 Jul 2019 20:50:34 +0000 (23:50 +0300)
committerVineet Gupta <vgupta@synopsys.com>
Mon, 5 Aug 2019 07:01:29 +0000 (12:31 +0530)
commit3778a4ff953003d48f4f13719e578a4618c87be1
tree0f8fbf09c423fc8a533cf4549aa1722ed15c1c12
parent3946fc9291da929ed6836ab79a3b87c34d142954
ARCv2: entry: early return from exception need not clear U & DE bits

Exception handlers call FAKE_RET_FROM_EXCPN to
 - clear AE bit: drop down from exception active to pure kernel mode
   allowing further excptions
 - set IE bit: re-enable interrupts

It additionally also clears U bit (user mode) and DE bit (delay slot
execution) which is redundant as hardware does that already on any taken
exception. Morevoer the current software clearing is bogus anyways as
the KFLAG instruction being used for purpose can't possibly write those
bits anyways.

So don't pretend to clear them.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
[vgupta: rewrote changelog]
arch/arc/include/asm/entry-arcv2.h