#ifndef _LINUX_PKEYS_H #define _LINUX_PKEYS_H #include #include #define PKEY_DISABLE_ACCESS 0x1 #define PKEY_DISABLE_WRITE 0x2 #define PKEY_ACCESS_MASK (PKEY_DISABLE_ACCESS |\ PKEY_DISABLE_WRITE) #ifdef CONFIG_ARCH_HAS_PKEYS #include #else /* ! CONFIG_ARCH_HAS_PKEYS */ #define arch_max_pkey() (1) #define execute_only_pkey(mm) (0) #define arch_override_mprotect_pkey(vma, prot, pkey) (0) #define PKEY_DEDICATED_EXECUTE_ONLY 0 #endif /* ! CONFIG_ARCH_HAS_PKEYS */ /* * This is called from mprotect_pkey(). * * Returns true if the protection keys is valid. */ static inline bool validate_pkey(int pkey) { if (pkey < 0) return false; return (pkey < arch_max_pkey()); } #endif /* _LINUX_PKEYS_H */