I am getting a SIGTRAP whenever an integer divide by 0 happens. It
should be sending SIGFPE.
It looks like kernel/traps.c is a little messed up.
The attached patch fixes it for me.
The decoding of the break instruction was selecting the wrong bits. It
looks like the trap instruction decoding was messed up also. The patch
fixes trap also, but I could not figure out how to get gcc to generate
the trap form of division, so that part is untested.
David Daney.