2020-12-17 16:43:30

by Tobias Klauser

[permalink] [raw]
Subject: [PATCH] selftests/vDSO: fix -Wformat warning in vdso_test_correctness

Fix the following -Wformat warnings in vdso_test_correctness.c:

vdso_test_correctness.c: In function ‘test_one_clock_gettime64’:
vdso_test_correctness.c:352:21: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘long long int’ [-Wformat=]
352 | printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
| ~~~~^
| |
| long int
| %09lld
353 | (unsigned long long)start.tv_sec, start.tv_nsec,
| ~~~~~~~~~~~~~
| |
| long long int
vdso_test_correctness.c:352:32: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
352 | printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
| ~~~~^
| |
| long int
| %09lld
353 | (unsigned long long)start.tv_sec, start.tv_nsec,
354 | (unsigned long long)vdso.tv_sec, vdso.tv_nsec,
| ~~~~~~~~~~~~
| |
| long long int
vdso_test_correctness.c:352:43: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 7 has type ‘long long int’ [-Wformat=]

The tv_sec member of __kernel_timespec is long long, both in
uapi/linux/time_types.h and locally in vdso_test_correctness.c.

Signed-off-by: Tobias Klauser <[email protected]>
---
tools/testing/selftests/vDSO/vdso_test_correctness.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/vDSO/vdso_test_correctness.c b/tools/testing/selftests/vDSO/vdso_test_correctness.c
index 5029ef9b228c..c4aea794725a 100644
--- a/tools/testing/selftests/vDSO/vdso_test_correctness.c
+++ b/tools/testing/selftests/vDSO/vdso_test_correctness.c
@@ -349,7 +349,7 @@ static void test_one_clock_gettime64(int clock, const char *name)
return;
}

- printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
+ printf("\t%llu.%09lld %llu.%09lld %llu.%09lld\n",
(unsigned long long)start.tv_sec, start.tv_nsec,
(unsigned long long)vdso.tv_sec, vdso.tv_nsec,
(unsigned long long)end.tv_sec, end.tv_nsec);
--
2.29.0


2020-12-17 18:33:01

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests/vDSO: fix -Wformat warning in vdso_test_correctness

On 12/17/20 9:32 AM, Tobias Klauser wrote:
> Fix the following -Wformat warnings in vdso_test_correctness.c:
>
> vdso_test_correctness.c: In function ‘test_one_clock_gettime64’:
> vdso_test_correctness.c:352:21: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘long long int’ [-Wformat=]
> 352 | printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
> | ~~~~^
> | |
> | long int
> | %09lld
> 353 | (unsigned long long)start.tv_sec, start.tv_nsec,
> | ~~~~~~~~~~~~~
> | |
> | long long int
> vdso_test_correctness.c:352:32: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
> 352 | printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
> | ~~~~^
> | |
> | long int
> | %09lld
> 353 | (unsigned long long)start.tv_sec, start.tv_nsec,
> 354 | (unsigned long long)vdso.tv_sec, vdso.tv_nsec,
> | ~~~~~~~~~~~~
> | |
> | long long int
> vdso_test_correctness.c:352:43: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 7 has type ‘long long int’ [-Wformat=]
>
> The tv_sec member of __kernel_timespec is long long, both in
> uapi/linux/time_types.h and locally in vdso_test_correctness.c.
>
> Signed-off-by: Tobias Klauser <[email protected]>
> ---
> tools/testing/selftests/vDSO/vdso_test_correctness.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/vDSO/vdso_test_correctness.c b/tools/testing/selftests/vDSO/vdso_test_correctness.c
> index 5029ef9b228c..c4aea794725a 100644
> --- a/tools/testing/selftests/vDSO/vdso_test_correctness.c
> +++ b/tools/testing/selftests/vDSO/vdso_test_correctness.c
> @@ -349,7 +349,7 @@ static void test_one_clock_gettime64(int clock, const char *name)
> return;
> }
>
> - printf("\t%llu.%09ld %llu.%09ld %llu.%09ld\n",
> + printf("\t%llu.%09lld %llu.%09lld %llu.%09lld\n",
> Thanks for the patch.

Thanks for the patch.

Applied to linux-kselftest next

thanks,
-- Shuah