ARC: [arcompact] Handle bus error from userspace as Interrupt not exception
authorVineet Gupta <vgupta@synopsys.com>
Fri, 30 Oct 2015 19:52:51 +0000 (01:22 +0530)
committerVineet Gupta <vgupta@synopsys.com>
Sat, 14 Nov 2015 07:42:20 +0000 (13:12 +0530)
commit541366da6a93f52f468b408ba24ab6bb5e4fd3d8
treeed6db5d9c9272f7f5f5da71b50725304177e092e
parent76a8c40c65a2fc9e526fcba97c0cd1a6ecbd3438
ARC: [arcompact] Handle bus error from userspace as Interrupt not exception

Bus errors from userspace on ARCompact based cores are handled by core
as a high priority L2 interrupt but current code treated it as interrupt
Handling an interrupt like exception is certainly not going to go unnoticed.
(and it worked so far as we never saw a Bus error from userspace until
IPPK guys tested a DDR controller with ECC error detection etc hence
needed to explicitly trigger/handle such errors)

 - So move mem_service exception handler from common code into ARCv2 code.
 - In ARCompact code, define  mem_service as L2 interrupt handler which
   just drops down to pure kernel mode and goes of to enqueue SIGBUS

Reported-by: Nelson Pereira <npereira@synopsys.com>
Tested-by: Ana Martins <amartins@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/kernel/entry-arcv2.S
arch/arc/kernel/entry-compact.S
arch/arc/kernel/entry.S