2024-03-14 17:51:29

by Sean Christopherson

[permalink] [raw]
Subject: [PATCH] KVM: selftests: Fix __GUEST_ASSERT() format warnings in ARM's arch timer test

Use %x instead of %lx when printing uint32_t variables to fix format
warnings in ARM's arch timer test.

aarch64/arch_timer.c: In function ‘guest_run_stage’:
aarch64/arch_timer.c:138:33: warning: format ‘%lx’ expects argument of type ‘long unsigned int’,
but argument 6 has type ‘uint32_t’ {aka ‘unsigned int’} [-Wformat=]
138 | "config_iter + 1 = 0x%lx, irq_iter = 0x%lx.\n"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.....
141 | config_iter + 1, irq_iter);
| ~~~~~~~~~~~~~~~
| |
| uint32_t {aka unsigned int}

Fixes: d1dafd065a23 ("KVM: arm64: selftests: Enable tuning of error margin in arch_timer test")
Signed-off-by: Sean Christopherson <[email protected]>
---

2024 Whack-a-Mole Champion.

Note, this is based on kvm/queue and probably won't apply to your tree as
the buggy commit went in via the RISC-V pull request.

tools/testing/selftests/kvm/aarch64/arch_timer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/kvm/aarch64/arch_timer.c b/tools/testing/selftests/kvm/aarch64/arch_timer.c
index ddba2c2fb5de..93100b3f1312 100644
--- a/tools/testing/selftests/kvm/aarch64/arch_timer.c
+++ b/tools/testing/selftests/kvm/aarch64/arch_timer.c
@@ -135,7 +135,7 @@ static void guest_run_stage(struct test_vcpu_shared_data *shared_data,

irq_iter = READ_ONCE(shared_data->nr_iter);
__GUEST_ASSERT(config_iter + 1 == irq_iter,
- "config_iter + 1 = 0x%lx, irq_iter = 0x%lx.\n"
+ "config_iter + 1 = 0x%x, irq_iter = 0x%x.\n"
" Guest timer interrupt was not trigged within the specified\n"
" interval, try to increase the error margin by [-e] option.\n",
config_iter + 1, irq_iter);

base-commit: e9a2bba476c8332ed547fce485c158d03b0b9659
--
2.44.0.291.gc1ea87d7ee-goog



2024-03-26 13:50:43

by Oliver Upton

[permalink] [raw]
Subject: Re: [PATCH] KVM: selftests: Fix __GUEST_ASSERT() format warnings in ARM's arch timer test


On Thu, 14 Mar 2024 10:51:15 -0700, Sean Christopherson wrote:
> Use %x instead of %lx when printing uint32_t variables to fix format
> warnings in ARM's arch timer test.
>
> aarch64/arch_timer.c: In function ‘guest_run_stage’:
> aarch64/arch_timer.c:138:33: warning: format ‘%lx’ expects argument of type ‘long unsigned int’,
> but argument 6 has type ‘uint32_t’ {aka ‘unsigned int’} [-Wformat=]
> 138 | "config_iter + 1 = 0x%lx, irq_iter = 0x%lx.\n"
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ......
> 141 | config_iter + 1, irq_iter);
> | ~~~~~~~~~~~~~~~
> | |
> | uint32_t {aka unsigned int}
>
> [...]

Applied to kvmarm/fixes, thanks!

[1/1] KVM: selftests: Fix __GUEST_ASSERT() format warnings in ARM's arch timer test
commit: 29b0075ed61cda250449f556fbe007a5c469440c

--
Best,
Oliver