[parisc-linux] Re: [parisc-linux-cvs] linux-2.6 carlos

Carlos O'Donell carlos@baldric.uwo.ca
Sat, 8 Nov 2003 17:00:11 -0500


On Sat, Nov 08, 2003 at 09:44:23PM +0000, Joel Soete wrote:
> +       case 13:
> +               if (user_mode(regs)) {
> +#ifdef PRINT_USER_FAULTS
> +                       printk(KERN_DEBUG "\nhandle_interruption() id=%d 
> command='%s'\n",
> +                           current->pid, current->comm);
> +                       show_regs(regs);
> +#endif
> +                       /* Conditional Trap
> +                          The condition succees in an instruction which 
> traps on condition  */
> +                       si.si_signo = SIGFPE;
> [...]
> +                       return;
> +               } else break;
> 
> (sorry for bad wrap but I also join the patch I suggested)
> 
> But you can prefer to ignore as it is just a work around and that I 
> don't yet see what other solution could be bring to such pb?

Adding the check for user_mode. Thanks Joel!
It seems that the kernel tries to use 'addi,tc' and a few other whichs
might generate a trap.

c.