Message ID | 20241216160257.87252-3-maddy@linux.ibm.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v2,1/3] selftest/powerpc/ptrace/core-pkey: Remove duplicate macros | expand |
Madhavan Srinivasan <maddy@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@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@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
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)]";
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@linux.ibm.com> --- Changelog v1: - Removed additional macros pointed out by Ritesh which are duplicates and are avilable in "pkeys.h" 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(-)