Commit 3809cefe authored by Yury Khrustalev's avatar Yury Khrustalev Committed by Catalin Marinas
Browse files

selftests/mm: Use PKEY_UNRESTRICTED macro



Replace literal 0 with macro PKEY_UNRESTRICTED where pkey_*() functions
are used in mm selftests for memory protection keys.

Signed-off-by: default avatarYury Khrustalev <yury.khrustalev@arm.com>
Suggested-by: default avatarJoey Gouly <joey.gouly@arm.com>
Acked-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
Link: https://lore.kernel.org/r/20250113170619.484698-3-yury.khrustalev@arm.com


Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent 6d61527d
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -218,7 +218,7 @@ bool seal_support(void)
bool pkey_supported(void)
{
#if defined(__i386__) || defined(__x86_64__) /* arch */
	int pkey = sys_pkey_alloc(0, 0);
	int pkey = sys_pkey_alloc(0, PKEY_UNRESTRICTED);

	if (pkey > 0)
		return true;
@@ -1671,7 +1671,7 @@ static void test_seal_discard_ro_anon_on_pkey(bool seal)
	setup_single_address_rw(size, &ptr);
	FAIL_TEST_IF_FALSE(ptr != (void *)-1);

	pkey = sys_pkey_alloc(0, 0);
	pkey = sys_pkey_alloc(0, PKEY_UNRESTRICTED);
	FAIL_TEST_IF_FALSE(pkey > 0);

	ret = sys_mprotect_pkey((void *)ptr, size, PROT_READ | PROT_WRITE, pkey);
@@ -1683,7 +1683,7 @@ static void test_seal_discard_ro_anon_on_pkey(bool seal)
	}

	/* sealing doesn't take effect if PKRU allow write. */
	set_pkey(pkey, 0);
	set_pkey(pkey, PKEY_UNRESTRICTED);
	ret = sys_madvise(ptr, size, MADV_DONTNEED);
	FAIL_TEST_IF_FALSE(!ret);

+2 −1
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@
#include <ucontext.h>
#include <sys/mman.h>

#include <linux/mman.h>
#include <linux/types.h>

#include "../kselftest.h"
@@ -193,7 +194,7 @@ static inline u32 *siginfo_get_pkey_ptr(siginfo_t *si)
static inline int kernel_has_pkeys(void)
{
	/* try allocating a key and see if it succeeds */
	int ret = sys_pkey_alloc(0, 0);
	int ret = sys_pkey_alloc(0, PKEY_UNRESTRICTED);
	if (ret <= 0) {
		return 0;
	}
+2 −2
Original line number Diff line number Diff line
@@ -311,7 +311,7 @@ static void test_sigsegv_handler_with_different_pkey_for_stack(void)
	__write_pkey_reg(pkey_reg);

	/* Protect the new stack with MPK 1 */
	pkey = sys_pkey_alloc(0, 0);
	pkey = sys_pkey_alloc(0, PKEY_UNRESTRICTED);
	sys_mprotect_pkey(stack, STACK_SIZE, PROT_READ | PROT_WRITE, pkey);

	/* Set up alternate signal stack that will use the default MPK */
@@ -484,7 +484,7 @@ static void test_pkru_sigreturn(void)
	__write_pkey_reg(pkey_reg);

	/* Protect the stack with MPK 2 */
	pkey = sys_pkey_alloc(0, 0);
	pkey = sys_pkey_alloc(0, PKEY_UNRESTRICTED);
	sys_mprotect_pkey(stack, STACK_SIZE, PROT_READ | PROT_WRITE, pkey);

	/* Set up alternate signal stack that will use the default MPK */
+1 −1
Original line number Diff line number Diff line
@@ -463,7 +463,7 @@ static pid_t fork_lazy_child(void)
static int alloc_pkey(void)
{
	int ret;
	unsigned long init_val = 0x0;
	unsigned long init_val = PKEY_UNRESTRICTED;

	dprintf1("%s()::%d, pkey_reg: 0x%016llx shadow: %016llx\n",
			__func__, __LINE__, __read_pkey_reg(), shadow_pkey_reg);