|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] x86/cpu-policy: work around bogus warning in test harness
commit aa370d3c26d2899ffe950849504edfdfb79400ea
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Thu Sep 5 10:00:07 2019 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Sep 5 10:00:07 2019 +0200
x86/cpu-policy: work around bogus warning in test harness
Despite %.12s properly limiting the number of characters read from
ident[], gcc 9 (at least up to 9.2.0) warns about the strings not
being nul-terminated:
test-cpu-policy.c:64:18: error: '%.12s' directive argument is not a
nul-terminated string [-Werror=format-overflow=]
64 | fail(" Test '%.12s', expected vendor %u, got %u\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
test-cpu-policy.c:20:12: note: in definition of macro 'fail'
20 | printf(fmt, ##__VA_ARGS__); \
| ^~~
test-cpu-policy.c:64:27: note: format string is defined here
64 | fail(" Test '%.12s', expected vendor %u, got %u\n",
| ^~~~~
test-cpu-policy.c:44:7: note: referenced argument declared here
44 | } tests[] = {
| ^~~~~
The issue was reported against gcc in their bugzilla (bug 91667).
Re-order array entries, oddly enough suppressing the warning.
Reported-by: Christopher Clark <christopher.w.clark@xxxxxxxxx>
Reported-by: Dario Faggioli <dfaggioli@xxxxxxxx>
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
tools/tests/cpu-policy/test-cpu-policy.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tools/tests/cpu-policy/test-cpu-policy.c
b/tools/tests/cpu-policy/test-cpu-policy.c
index ca3b8dd45f..fe00cd4276 100644
--- a/tools/tests/cpu-policy/test-cpu-policy.c
+++ b/tools/tests/cpu-policy/test-cpu-policy.c
@@ -42,15 +42,16 @@ static void test_vendor_identification(void)
};
unsigned int vendor;
} tests[] = {
+ /* The 1st entry should remain here to work around gcc bug 91667. */
+ { { "" }, X86_VENDOR_UNKNOWN },
+ { { " " }, X86_VENDOR_UNKNOWN },
+ { { "xxxxxxxxxxxx" }, X86_VENDOR_UNKNOWN },
+
{ { "GenuineIntel" }, X86_VENDOR_INTEL },
{ { "AuthenticAMD" }, X86_VENDOR_AMD },
{ { "CentaurHauls" }, X86_VENDOR_CENTAUR },
{ { " Shanghai " }, X86_VENDOR_SHANGHAI },
{ { "HygonGenuine" }, X86_VENDOR_HYGON },
-
- { { "" }, X86_VENDOR_UNKNOWN },
- { { " " }, X86_VENDOR_UNKNOWN },
- { { "xxxxxxxxxxxx" }, X86_VENDOR_UNKNOWN },
};
printf("Testing CPU vendor identification:\n");
--
generated by git-patchbot for /home/xen/git/xen.git#staging
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |