[PATCH v2 3/3] selftest/powerpc/ptrace: Cleanup duplicate macro definitions
Ritesh Harjani (IBM)
ritesh.list at gmail.com
Tue Dec 17 04:24:02 AEDT 2024
Madhavan Srinivasan <maddy at linux.ibm.com> writes:
> Both core-pkey.c and ptrace-pkey.c tests have
> similar macro definitions, move them to "pkeys.h"
> and remove the macro definitions from the C file.
>
> Signed-off-by: Madhavan Srinivasan <maddy at linux.ibm.com>
> ---
> Changelog v1:
> - Removed additional macros pointed out by Ritesh
> which are duplicates and are avilable in "pkeys.h"
Thanks! The changes looks good to me.
Please feel free to add -
Reviewed-by: Ritesh Harjani (IBM) <ritesh.list at gmail.com>
Gave a quick run on my lpar too -
# selftests: powerpc/ptrace: core-pkey
# test: core_pkey
# [User Write (Running)] AMR: 3cffffffffffffff pkey1: 4 pkey2: 5 pkey3: 6
# success: core_pkey
ok 9 selftests: powerpc/ptrace: core-pkey
# selftests: powerpc/ptrace: ptrace-pkey
# test: ptrace_pkey
# [User Write (Running)] AMR: 3cffffffffffffff pkey1: 4 pkey2: 5 pkey3: 6
# success: ptrace_pkey
ok 13 selftests: powerpc/ptrace: ptrace-pkey
-ritesh
>
> tools/testing/selftests/powerpc/include/pkeys.h | 8 ++++++++
> tools/testing/selftests/powerpc/ptrace/core-pkey.c | 12 ------------
> tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c | 12 ------------
> 3 files changed, 8 insertions(+), 24 deletions(-)
>
> diff --git a/tools/testing/selftests/powerpc/include/pkeys.h b/tools/testing/selftests/powerpc/include/pkeys.h
> index 51729d9a7111..3a0129467de6 100644
> --- a/tools/testing/selftests/powerpc/include/pkeys.h
> +++ b/tools/testing/selftests/powerpc/include/pkeys.h
> @@ -35,10 +35,18 @@
> #define __NR_pkey_alloc 384
> #define __NR_pkey_free 385
>
> +#ifndef NT_PPC_PKEY
> +#define NT_PPC_PKEY 0x110
> +#endif
> +
> #define PKEY_BITS_PER_PKEY 2
> #define NR_PKEYS 32
> #define PKEY_BITS_MASK ((1UL << PKEY_BITS_PER_PKEY) - 1)
>
> +#define AMR_BITS_PER_PKEY 2
> +#define PKEY_REG_BITS (sizeof(u64) * 8)
> +#define pkeyshift(pkey) (PKEY_REG_BITS - ((pkey + 1) * AMR_BITS_PER_PKEY))
> +
> inline unsigned long pkeyreg_get(void)
> {
> return mfspr(SPRN_AMR);
> diff --git a/tools/testing/selftests/powerpc/ptrace/core-pkey.c b/tools/testing/selftests/powerpc/ptrace/core-pkey.c
> index 31c9bf6d95db..f061434af452 100644
> --- a/tools/testing/selftests/powerpc/ptrace/core-pkey.c
> +++ b/tools/testing/selftests/powerpc/ptrace/core-pkey.c
> @@ -18,18 +18,6 @@
> #include "child.h"
> #include "pkeys.h"
>
> -#ifndef NT_PPC_PKEY
> -#define NT_PPC_PKEY 0x110
> -#endif
> -
> -#ifndef PKEY_DISABLE_EXECUTE
> -#define PKEY_DISABLE_EXECUTE 0x4
> -#endif
> -
> -#define AMR_BITS_PER_PKEY 2
> -#define PKEY_REG_BITS (sizeof(u64) * 8)
> -#define pkeyshift(pkey) (PKEY_REG_BITS - ((pkey + 1) * AMR_BITS_PER_PKEY))
> -
> #define CORE_FILE_LIMIT (5 * 1024 * 1024) /* 5 MB should be enough */
>
> static const char core_pattern_file[] = "/proc/sys/kernel/core_pattern";
> diff --git a/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c b/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c
> index 6893ed096457..fc633014424f 100644
> --- a/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c
> +++ b/tools/testing/selftests/powerpc/ptrace/ptrace-pkey.c
> @@ -9,18 +9,6 @@
> #include "child.h"
> #include "pkeys.h"
>
> -#ifndef NT_PPC_PKEY
> -#define NT_PPC_PKEY 0x110
> -#endif
> -
> -#ifndef PKEY_DISABLE_EXECUTE
> -#define PKEY_DISABLE_EXECUTE 0x4
> -#endif
> -
> -#define AMR_BITS_PER_PKEY 2
> -#define PKEY_REG_BITS (sizeof(u64) * 8)
> -#define pkeyshift(pkey) (PKEY_REG_BITS - ((pkey + 1) * AMR_BITS_PER_PKEY))
> -
> static const char user_read[] = "[User Read (Running)]";
> static const char user_write[] = "[User Write (Running)]";
> static const char ptrace_read_running[] = "[Ptrace Read (Running)]";
> --
> 2.47.0
More information about the Linuxppc-dev
mailing list