Re: [RFC v6 13/62] powerpc: track allocation status of all pkeys
From: Ram Pai <hidden>
Date: 2017-07-29 22:43:19
Also in:
linux-arch, linux-mm, lkml
On Thu, Jul 27, 2017 at 11:01:44AM -0300, Thiago Jung Bauermann wrote:
=20 Hello Ram, =20 I'm still going through the patches and haven't formed a full picture of the feature in my mind yet, so my comments today won't be particularly insightful... =20 But hopefully the comments that I currently have will be helpful anyway.
sure. thanx for taking the time to look through the patches.
=20 Ram Pai [off-list ref] writes:quoted
diff --git a/arch/powerpc/include/asm/pkeys.h b/arch/powerpc/include/as=
m/pkeys.h
quoted
index 203d7de..09b268e 100644--- a/arch/powerpc/include/asm/pkeys.h +++ b/arch/powerpc/include/asm/pkeys.h@@ -2,21 +2,87 @@ #define _ASM_PPC64_PKEYS_H extern bool pkey_inited; -#define ARCH_VM_PKEY_FLAGS 0 +#define arch_max_pkey() 32 +#define ARCH_VM_PKEY_FLAGS (VM_PKEY_BIT0 | VM_PKEY_BIT1 | VM_PKEY_BIT2=
| \
quoted
+ VM_PKEY_BIT3 | VM_PKEY_BIT4) +/* + * Bits are in BE format. + * NOTE: key 31, 1, 0 are not used. + * key 0 is used by default. It give read/write/execute permission. + * key 31 is reserved by the hypervisor. + * key 1 is recommended to be not used. + * PowerISA(3.0) page 1015, programming note. + */ +#define PKEY_INITIAL_ALLOCAION 0xc0000001=20 There's a typo in the macro name, should be "ALLOCATION".
Thanks fixed it. The new version of the code, calculates the allocation_mask at runtime, depending on the number of keys specified by the device tree as well as other factors. So the above macro is replaced by a variable 'initial_allocation_mask'. RP
=20 --=20 Thiago Jung Bauermann IBM Linux Technology Center
--=20 Ram Pai