Re: [PATCH 1/2] x86, stackvalidate: Compile-time stack frame pointer validation

From: Peter Zijlstra
Date: Tue Apr 28 2015 - 10:27:15 EST


On Tue, Apr 28, 2015 at 09:21:05AM -0500, Josh Poimboeuf wrote:

> > > I tried that, but I discovered that gcc's usage of frame pointers would
> > > be a lot harder to validate. It only sets up the frame pointer in code
> > > paths which have call instructions. There are a lot of functions which
> > > have conditional jumps at the beginning which can jump straight to a
> > > return instruction without first doing the frame pointer setup.
> >
> > Hmm, would not such code break your patching?
>
> No, because we'll also do some runtime stack validation (which will be a
> future patch set). If we detect preemption or an irq frame on the
> stack, we'll assume the stack is unreliable and delay the patching of
> the task (*).

Ah, which fixes your second issue too (the interrupt before frame
setup). OK.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/