From: Marek Marczykowski-Górecki Date: Thu, 5 Apr 2018 01:50:55 +0000 (+0200) Subject: tools/kdd: mute spurious gcc warning X-Git-Tag: archive/raspbian/4.11.1-1+rpi1^2~25 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=200b8fc0218940fe8ed8129299528737f491e688;p=xen.git tools/kdd: mute spurious gcc warning gcc-8 complains: kdd.c:698:13: error: 'memcpy' offset [-204, -717] is out of the bounds [0, 216] of object 'ctrl' with type 'kdd_ctrl' {aka 'union '} [-Werror=array-bounds] memcpy(buf, ((uint8_t *)&ctrl.c32) + offset, len); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kdd.c: In function 'kdd_select_callback': kdd.c:642:14: note: 'ctrl' declared here kdd_ctrl ctrl; ^~~~ But this is impossible - 'offset' is unsigned and correctly validated few lines before. Signed-off-by: Marek Marczykowski-Górecki Acked-by: Wei Liu Release-Acked-by: Juergen Gross (cherry picked from commit 437e00fea04becc91c1b6bc1c0baa636b067a5cc) --- diff --git a/tools/debugger/kdd/kdd.c b/tools/debugger/kdd/kdd.c index 5a019a0a0c..6ccb534489 100644 --- a/tools/debugger/kdd/kdd.c +++ b/tools/debugger/kdd/kdd.c @@ -695,7 +695,10 @@ static void kdd_handle_read_ctrl(kdd_state *s) KDD_LOG(s, "Request outside of known control space\n"); len = 0; } else { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Warray-bounds" memcpy(buf, ((uint8_t *)&ctrl.c32) + offset, len); +#pragma GCC diagnostic pop } }