Re: [PATCH v3] arm64: enable per-task stack canaries

From: Will Deacon
Date: Wed Dec 12 2018 - 14:28:24 EST


On Wed, Dec 12, 2018 at 09:50:37AM -0800, Kees Cook wrote:
> On Wed, Dec 12, 2018 at 4:08 AM Ard Biesheuvel
> <ard.biesheuvel@xxxxxxxxxx> wrote:
> >
> > This enables the use of per-task stack canary values if GCC has
> > support for emitting the stack canary reference relative to the
> > value of sp_el0, which holds the task struct pointer in the arm64
> > kernel.
> >
> > The $(eval) extends KBUILD_CFLAGS at the moment the make rule is
> > applied, which means asm-offsets.o (which we rely on for the offset
> > value) is built without the arguments, and everything built afterwards
> > has the options set.
> >
> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
>
> Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>

I've bitten the bullet and queued this for 4.21. We can always revert it
if the compiler support falls apart, but at this point the worst I can see
happening is that we have to change the name of an option.

Will