On 2020/11/4 18:44, Thomas Huth wrote: > On 04/11/2020 11.23, AlexChen wrote: >> We should use printf format specifier "%u" instead of "%d" for >> argument of type "unsigned int". >> >> Reported-by: Euler Robot <euler.ro...@huawei.com> >> Signed-off-by: Alex Chen <alex.c...@huawei.com> >> --- >> tests/qtest/arm-cpu-features.c | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/tests/qtest/arm-cpu-features.c b/tests/qtest/arm-cpu-features.c >> index d20094d5a7..bc681a95d5 100644 >> --- a/tests/qtest/arm-cpu-features.c >> +++ b/tests/qtest/arm-cpu-features.c >> @@ -536,7 +536,7 @@ static void test_query_cpu_model_expansion_kvm(const >> void *data) >> if (kvm_supports_sve) { >> g_assert(vls != 0); >> max_vq = 64 - __builtin_clzll(vls); >> - sprintf(max_name, "sve%d", max_vq * 128); >> + sprintf(max_name, "sve%u", max_vq * 128); >> >> /* Enabling a supported length is of course fine. */ >> assert_sve_vls(qts, "host", vls, "{ %s: true }", max_name); >> @@ -556,7 +556,7 @@ static void test_query_cpu_model_expansion_kvm(const >> void *data) >> * unless all larger, supported vector lengths are also >> * disabled. >> */ >> - sprintf(name, "sve%d", vq * 128); >> + sprintf(name, "sve%u", vq * 128); >> error = g_strdup_printf("cannot disable %s", name); >> assert_error(qts, "host", error, >> "{ %s: true, %s: false }", >> @@ -569,7 +569,7 @@ static void test_query_cpu_model_expansion_kvm(const >> void *data) >> * we need at least one vector length enabled. >> */ >> vq = __builtin_ffsll(vls); >> - sprintf(name, "sve%d", vq * 128); >> + sprintf(name, "sve%u", vq * 128); >> error = g_strdup_printf("cannot disable %s", name); >> assert_error(qts, "host", error, "{ %s: false }", name); >> g_free(error); >> @@ -581,7 +581,7 @@ static void test_query_cpu_model_expansion_kvm(const >> void *data) >> } >> } >> if (vq <= SVE_MAX_VQ) { >> - sprintf(name, "sve%d", vq * 128); >> + sprintf(name, "sve%u", vq * 128); >> error = g_strdup_printf("cannot enable %s", name); >> assert_error(qts, "host", error, "{ %s: true }", name); >> g_free(error); >> > > max_vq and vq are both "uint32_t" and not "unsigned int" ... so if you want > to fix this really really correctly, please use PRIu32 from inttypes.h > instead. >
Hi Thomas, Thanks for your review. According to the definition of the macro PRIu32(# define PRIu32 "u"), using PRIu32 works the same as using %u to print, and using PRIu32 to print is relatively rare in QEMU(%u 720, PRIu32 only 120). Can we continue to use %u to print max_vq and vq in this patch. Of course, this is just my small small suggestion. If you think it is better to use PRIu32 for printing, I will send patch V2. Looking forward to your reply. Thanks, Alex