[PATCH v1 09/20] arm64: define VM_PKEY_BIT* for arm64
Dave Hansen
dave.hansen at intel.com
Tue Oct 3 09:51:24 PDT 2023
On 9/27/23 07:01, Joey Gouly wrote:
> -#ifdef CONFIG_ARCH_HAS_PKEYS
> +#if defined(CONFIG_ARCH_HAS_PKEYS) && !defined(CONFIG_ARM64)
> # define VM_PKEY_SHIFT VM_HIGH_ARCH_BIT_0
> # define VM_PKEY_BIT0 VM_HIGH_ARCH_0 /* A protection key is a 4-bit value */
> # define VM_PKEY_BIT1 VM_HIGH_ARCH_1 /* on x86 and 5-bit value on ppc64 */
> @@ -341,6 +341,15 @@ extern unsigned int kobjsize(const void *objp);
> #endif
> #endif /* CONFIG_ARCH_HAS_PKEYS */
>
> +#if defined(CONFIG_ARM64)
> +# define VM_PKEY_SHIFT VM_HIGH_ARCH_BIT_2
> +# define VM_PKEY_BIT0 VM_HIGH_ARCH_2 /* A protection key is a 3-bit value on arm64 */
> +# define VM_PKEY_BIT1 VM_HIGH_ARCH_3
> +# define VM_PKEY_BIT2 VM_HIGH_ARCH_4
> +# define VM_PKEY_BIT3 0
> +# define VM_PKEY_BIT4 0
> +#endif
This might be a bit cleaner to just defer out to a per-arch header. It
made sense for ppc and x86 to share their copy in here, but now that a
third one is around we should probably move this to actual arch/ code.
More information about the linux-arm-kernel
mailing list