Re: MIPS: return after handling coprocessor 2 exception

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jun 17, 2010 at 10:13:18AM -0700, David Daney wrote:
> On 06/17/2010 06:25 AM, Jesper Nilsson wrote:
> >Breaking here dropped us to the default code which always sends
> >a SIGILL to the current process, no matter what the CU2 notifier says.
> >
> >Signed-off-by: Jesper Nilsson<jesper@xxxxxx>
> >---
> >  traps.c |    2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> >diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
> >index 8bdd6a6..8527808 100644
> >--- a/arch/mips/kernel/traps.c
> >+++ b/arch/mips/kernel/traps.c
> >@@ -976,7 +976,7 @@ asmlinkage void do_cpu(struct pt_regs *regs)
> >
> >  	case 2:
> >  		raw_notifier_call_chain(&cu2_chain, CU2_EXCEPTION, regs);
> >-		break;
> >+		return;
> >
> 
> What happens when the call chain is empty, and the proper action *is* 
> SIGILL?

Well, since there is a default notifier installed at the end, it will
correctly return SIGILL.

See the definition of default_cu2_call in the same file.

> David Daney

/^JN - Jesper Nilsson
--
                  Jesper Nilsson -- jesper_at_jni.nu



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux