Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:olh:xen-4.5
xen
xen.2de2b10b2252761baa5dd0077df384dbfcca8212.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File xen.2de2b10b2252761baa5dd0077df384dbfcca8212.patch of Package xen
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com> Date: Tue, 22 May 2018 21:47:45 +0200 Subject: 2de2b10b2252761baa5dd0077df384dbfcca8212 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit tools/kdd: alternative way of muting spurious gcc warning Older gcc does not support #pragma GCC diagnostics, so use alternative approach - change variable type to uint32_t (this code handle 32-bit requests only anyway), which apparently also avoid gcc complaining about this (otherwise correct) code. Fixes 437e00fea04becc91c1b6bc1c0baa636b067a5cc "tools/kdd: mute spurious gcc warning" Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> Acked-by: Wei Liu <wei.liu2@citrix.com> Release-acked-by: Juergen Gross <jgross@suse.com> Acked-by: Tim Deegan <tim@xen.org> --- tools/debugger/kdd/kdd.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) --- a/tools/debugger/kdd/kdd.c +++ b/tools/debugger/kdd/kdd.c @@ -678,36 +678,33 @@ static void kdd_handle_read_ctrl(kdd_state *s) break; case 0x2: /* Control registers */ if (len > sizeof ctrl.c64) len = sizeof ctrl.c64; memcpy(buf, (uint8_t *)&ctrl, len); break; default: KDD_LOG(s, "Unknown control space 0x%"PRIx64"\n", addr); len = 0; } } else { /* 32-bit control-register space starts at 0x[2]cc, for 84 bytes */ - uint64_t offset = addr; + uint32_t offset = addr; if (offset > 0x200) offset -= 0x200; offset -= 0xcc; if (offset > sizeof ctrl.c32 || offset + len > sizeof ctrl.c32) { 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 } } s->txp.cmd.mem.addr = addr; s->txp.cmd.mem.length_req = s->rxp.cmd.mem.length_req; s->txp.cmd.mem.length_rsp = len; s->txp.cmd.mem.status = ((len) ? KDD_STATUS_SUCCESS : KDD_STATUS_FAILURE); kdd_send_cmd(s, KDD_CMD_READ_CTRL, len); } /* MSR access */ static void kdd_handle_read_msr(kdd_state *s)
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor