[PATCH] powerpc: Avoid panic during boot due to divide by zero in init_cache_info()
Segher Boessenkool
segher at kernel.crashing.org
Mon Mar 6 11:10:47 AEDT 2017
On Mon, Mar 06, 2017 at 10:09:01AM +1100, Benjamin Herrenschmidt wrote:
> > The compiler can do whatever it likes with code that has undefined
> > behaviour. With this optimisation it a) can compile the conforming
> > code to something better; and b) undefined behaviour will trap instead
> > of doing something random (which often is exploitable).
>
> I actually like that feature,
Yeah, me too -- it also (currently) makes *smaller* code than it would
without it. Win-win-win.
> except it did bite me once or twice in the past
> adding traps to intentional NULL dereferences ;-) Ah the joys of writing
> a firmware where you poke at stuff at fixed addresses in low memory :-)
You cannot really have something at address 0, the way NULL pointers
are represented in GCC. 0 in firmware, so *fun*, especially before the
CFAR was invented. "Something jumped to 0, CTR is 0 so it's probably
a BCTR, but which one of the 6000?"
What do you have at 0? Not anything you need often I hope?
Segher
More information about the Linuxppc-dev
mailing list