Hi,
Thanks to you and Mark for the comments so far!
On Thu, Dec 07, 2023 at 03:25:17PM +0000, Catalin Marinas wrote:
On Fri, Nov 24, 2023 at 04:34:56PM +0000, Joey Gouly wrote:
diff --git a/arch/arm64/include/asm/pkeys.h b/arch/arm64/include/asm/pkeys.h new file mode 100644 index 000000000000..5761fb48fd53 --- /dev/null +++ b/arch/arm64/include/asm/pkeys.h @@ -0,0 +1,54 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/*
- Copyright (C) 2023 Arm Ltd.
- Based on arch/x86/include/asm/pkeys.h
+*/
+#ifndef _ASM_ARM64_PKEYS_H +#define _ASM_ARM64_PKEYS_H
+#define ARCH_VM_PKEY_FLAGS (VM_PKEY_BIT0 | VM_PKEY_BIT1 | VM_PKEY_BIT2)
+#define arch_max_pkey() 0
+int arch_set_user_pkey_access(struct task_struct *tsk, int pkey,
unsigned long init_val);
+static inline bool arch_pkeys_enabled(void) +{
- return false;
+}
+static inline int vma_pkey(struct vm_area_struct *vma) +{
- return -1;
+}
What's the point of these dummies? I guess they'll be populated later but I haven't reached that point. Could we not just leave them out for now and add the complete version directly? This would work better with an earlier comment to move the Kconfig entry towards the end of the series.
I think the suggestion to move the Kconfig to the end is good, and I agree that it will probably remove these dummy implementations.
Also, they don't seem to match the generic include/linux/pkeys.h dummies. For example, vma_pkey() returns 0 in the generic version, -1 here. Should they actually match?
If for some reason I need to keep them after the Kconfig move, I will look into this further.
Thanks, Joey