2024-06-05 12:23:08

by Dev Jain

[permalink] [raw]
Subject: [PATCH] selftests: arm64: Fix redundancy of a testcase

Currently, we are writing the same value as we read, into the TLS
register; hence, we cannot confirm updation of the register, making the
testcase "verify_tpidr_one" redundant. Fix this; while at it, do a style
change.

Signed-off-by: Dev Jain <[email protected]>
---
tools/testing/selftests/arm64/abi/ptrace.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/arm64/abi/ptrace.c b/tools/testing/selftests/arm64/abi/ptrace.c
index abe4d58d731d..c105703442f9 100644
--- a/tools/testing/selftests/arm64/abi/ptrace.c
+++ b/tools/testing/selftests/arm64/abi/ptrace.c
@@ -47,7 +47,7 @@ static void test_tpidr(pid_t child)

/* ...write a new value.. */
write_iov.iov_len = sizeof(uint64_t);
- write_val[0] = read_val[0]++;
+ write_val[0] = read_val[0] + 1;
ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov);
ksft_test_result(ret == 0, "write_tpidr_one\n");

@@ -108,7 +108,7 @@ static void test_tpidr(pid_t child)
/* Writing only TPIDR... */
write_iov.iov_len = sizeof(uint64_t);
memcpy(write_val, read_val, sizeof(read_val));
- write_val[0] += 1;
+ ++write_val[0];
ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov);

if (ret == 0) {
--
2.39.2



2024-06-05 12:49:04

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH] selftests: arm64: Fix redundancy of a testcase

On Wed, Jun 05, 2024 at 05:24:48PM +0530, Dev Jain wrote:
> Currently, we are writing the same value as we read, into the TLS
> register; hence, we cannot confirm updation of the register, making the
> testcase "verify_tpidr_one" redundant. Fix this; while at it, do a style
> change.

Please don't combine unrelated changes into a single patch.

> /* ...write a new value.. */
> write_iov.iov_len = sizeof(uint64_t);
> - write_val[0] = read_val[0]++;
> + write_val[0] = read_val[0] + 1;
> ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov);
> ksft_test_result(ret == 0, "write_tpidr_one\n");

This is a good fix:

Reviewed-by: Mark Brown <[email protected]>

> @@ -108,7 +108,7 @@ static void test_tpidr(pid_t child)
> /* Writing only TPIDR... */
> write_iov.iov_len = sizeof(uint64_t);
> memcpy(write_val, read_val, sizeof(read_val));
> - write_val[0] += 1;
> + ++write_val[0];

I'm less convinced that this is a good style change.


Attachments:
(No filename) (992.00 B)
signature.asc (499.00 B)
Download all attachments

2024-06-05 13:47:50

by Dev Jain

[permalink] [raw]
Subject: Re: [PATCH] selftests: arm64: Fix redundancy of a testcase


On 6/5/24 17:30, Mark Brown wrote:
> On Wed, Jun 05, 2024 at 05:24:48PM +0530, Dev Jain wrote:
>> Currently, we are writing the same value as we read, into the TLS
>> register; hence, we cannot confirm updation of the register, making the
>> testcase "verify_tpidr_one" redundant. Fix this; while at it, do a style
>> change.
> Please don't combine unrelated changes into a single patch.


I shall take care of that in the future.

>
>> /* ...write a new value.. */
>> write_iov.iov_len = sizeof(uint64_t);
>> - write_val[0] = read_val[0]++;
>> + write_val[0] = read_val[0] + 1;
>> ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov);
>> ksft_test_result(ret == 0, "write_tpidr_one\n");
> This is a good fix:
>
> Reviewed-by: Mark Brown <[email protected]>


Thanks!

>
>> @@ -108,7 +108,7 @@ static void test_tpidr(pid_t child)
>> /* Writing only TPIDR... */
>> write_iov.iov_len = sizeof(uint64_t);
>> memcpy(write_val, read_val, sizeof(read_val));
>> - write_val[0] += 1;
>> + ++write_val[0];
> I'm less convinced that this is a good style change.


Well, what I have seen usually is, when we add 1, we

use prefix/postfix increment, and do a "+=" when it

is not 1. But, I get your point: such style may confuse

people into thinking that we are doing an index/pointer

increment, since that is the usual usecase for this.


2024-06-12 16:09:15

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH] selftests: arm64: Fix redundancy of a testcase

On Wed, 05 Jun 2024 17:24:48 +0530, Dev Jain wrote:
> Currently, we are writing the same value as we read, into the TLS
> register; hence, we cannot confirm updation of the register, making the
> testcase "verify_tpidr_one" redundant. Fix this; while at it, do a style
> change.
>
>

Applied to arm64 (for-next/kselftest), thanks! I removed the increment
style change.

[1/1] selftests: arm64: Fix redundancy of a testcase
https://git.kernel.org/arm64/c/031d1f20d5db

--
Catalin