[Skiboot] [PATCH] hw/xive.c: Fix memcmp() in DEBUG build to compare struct not ptr
Stewart Smith
stewart at linux.ibm.com
Tue May 21 09:51:06 AEST 2019
With GCC9:
hw/xive.c: In function ‘xive_check_eq_update’:
hw/xive.c:3034:29: error: argument to ‘sizeof’ in ‘__builtin_memcmp’ call is the same expression as the first source; did you mean to dereference it? [-Werror=sizeof-pointer-memaccess]
if (memcmp(eq, &eq2, sizeof(eq)) != 0) {
^
hw/xive.c: In function ‘xive_check_vpc_update’:
hw/xive.c:3056:29: error: argument to ‘sizeof’ in ‘__builtin_memcmp’ call is the same expression as the first source; did you mean to dereference it? [-Werror=sizeof-pointer-memaccess]
if (memcmp(vp, &vp2, sizeof(vp)) != 0) {
^
cc1: all warnings being treated as errors
Fixes: 2eea386767728
Signed-off-by: Stewart Smith <stewart at linux.ibm.com>
---
hw/xive.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/xive.c b/hw/xive.c
index 5edcaedf5875..a9f1e7707ac9 100644
--- a/hw/xive.c
+++ b/hw/xive.c
@@ -3027,7 +3027,7 @@ static bool xive_check_eq_update(struct xive *x, uint32_t idx, struct xive_eq *e
assert(eq_p);
eq2 = *eq_p;
- if (memcmp(eq, &eq2, sizeof(eq)) != 0) {
+ if (memcmp(eq, &eq2, sizeof(struct xive_eq)) != 0) {
xive_err(x, "EQ update mismatch idx %d\n", idx);
xive_err(x, "want: %08x %08x %08x %08x\n",
eq->w0, eq->w1, eq->w2, eq->w3);
@@ -3049,7 +3049,7 @@ static bool xive_check_vpc_update(struct xive *x, uint32_t idx, struct xive_vp *
assert(vp_p);
vp2 = *vp_p;
- if (memcmp(vp, &vp2, sizeof(vp)) != 0) {
+ if (memcmp(vp, &vp2, sizeof(struct xive_vp)) != 0) {
xive_err(x, "VP update mismatch idx %d\n", idx);
xive_err(x, "want: %08x %08x %08x %08x\n",
vp->w0, vp->w1, vp->w2, vp->w3);
--
2.21.0
More information about the Skiboot
mailing list