[PATCH 02/25] powerpc: define an additional vma bit for protection keys.
Ram Pai
linuxram at us.ibm.com
Tue Oct 24 04:43:00 AEDT 2017
On Mon, Oct 23, 2017 at 02:55:51PM +0530, Aneesh Kumar K.V wrote:
> Ram Pai <linuxram at us.ibm.com> writes:
>
> > powerpc needs an additional vma bit to support 32 keys.
> > Till the additional vma bit lands in include/linux/mm.h
> > we have to define it in powerpc specific header file.
> > This is needed to get pkeys working on power.
> >
> > Signed-off-by: Ram Pai <linuxram at us.ibm.com>
> > ---
> > arch/powerpc/include/asm/pkeys.h | 18 ++++++++++++++++++
> > 1 files changed, 18 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/powerpc/include/asm/pkeys.h b/arch/powerpc/include/asm/pkeys.h
> > index c02305a..44e01a2 100644
> > --- a/arch/powerpc/include/asm/pkeys.h
> > +++ b/arch/powerpc/include/asm/pkeys.h
> > @@ -3,6 +3,24 @@
> >
> > extern bool pkey_inited;
> > extern bool pkey_execute_disable_support;
> > +
> > +/*
> > + * powerpc needs an additional vma bit to support 32 keys.
> > + * Till the additional vma bit lands in include/linux/mm.h
> > + * we have to carry the hunk below. This is needed to get
> > + * pkeys working on power. -- Ram
> > + */
> > +#ifndef VM_HIGH_ARCH_BIT_4
> > +#define VM_HIGH_ARCH_BIT_4 36
> > +#define VM_HIGH_ARCH_4 BIT(VM_HIGH_ARCH_BIT_4)
> > +#define VM_PKEY_SHIFT VM_HIGH_ARCH_BIT_0
> > +#define VM_PKEY_BIT0 VM_HIGH_ARCH_0
> > +#define VM_PKEY_BIT1 VM_HIGH_ARCH_1
> > +#define VM_PKEY_BIT2 VM_HIGH_ARCH_2
> > +#define VM_PKEY_BIT3 VM_HIGH_ARCH_3
> > +#define VM_PKEY_BIT4 VM_HIGH_ARCH_4
> > +#endif
> > +
> > #define ARCH_VM_PKEY_FLAGS 0
>
> Do we want them in pkeys.h ? Even if they are arch specific for the
> existing ones we have them in include/linux/mm.h. IIUC, vmflags details
> are always in mm.h? This will be the first exception to that?
I am trying to get the real fix in include/linux/mm.h
If that happens sooner than this hunk is not needed.
Till then this is an exception, but it is the **ONLY** exception.
I think your point is to have this hunk in include/linux/mm.h ?
If yes, than it would be easier to push the real fix in
include/linux/mm.h instead of pushing this hunk in the there.
RP
More information about the Linuxppc-dev
mailing list