Re: [PATCH v5 11/37] mm: Define VM_SHADOW_STACK for arm64 when we support GCS

Mark Brown
2023-08-22T15:42:34Z

[-- Attachment #1: Type: text/plain, Size: 989 bytes --]

On Tue, Aug 22, 2023 at 05:21:09PM +0200, David Hildenbrand wrote:
> On 22.08.23 15:56, Mark Brown wrote:

> > @@ -372,7 +372,17 @@ extern unsigned int kobjsize(const void *objp);
> > * having a PAGE_SIZE guard gap.
> > */
> > # define VM_SHADOW_STACK VM_HIGH_ARCH_5
> > -#else
> > +#endif
> > +
> > +#if defined(CONFIG_ARM64_GCS)
> > +/*
> > + * arm64's Guarded Control Stack implements similar functionality and
> > + * has similar constraints to shadow stacks.
> > + */
> > +# define VM_SHADOW_STACK VM_HIGH_ARCH_5
> > +#endif

> Shouldn't that all just merged with the previous define(s)?

> Also, I wonder if we now want to have CONFIG_HAVE_ARCH_SHADOW_STACK or
> similar.

I can certainly update it to do that, I was just trying to fit in with
how the code was written on the basis that there was probably a good
reason for it that had been discussed somewhere. I can send an
incremental patch for this on top of the x86 patches assuming they go in
during the merge window.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]