From d4eece000391583a6e32a225d7eb5b573a5c5565 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sat, 19 Aug 2017 15:22:58 +0200 Subject: [PATCH] tools/libxc/xc_dom_arm: add missing variable initialization The variable domctl.u.address_size.size may remain uninitialized if guest_type is not one of xen-3.0-aarch64 or xen-3.0-armv7l. And the code precisely checks if this variable is still 0 to decide if the guest type is supported or not. This fixes the following build failure with gcc 7.x: xc_dom_arm.c:229:31: error: 'domctl.u.address_size.size' may be used uninitialized in this function [-Werror=maybe-uninitialized] if ( domctl.u.address_size.size == 0 ) Patch originally taken from https://www.mail-archive.com/xen-devel@lists.xen.org/msg109313.html. Signed-off-by: Bernd Kuhls [Thomas: improved commit log, reformatted with Git.] Signed-off-by: Thomas Petazzoni --- tools/libxc/xc_dom_arm.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/libxc/xc_dom_arm.c b/tools/libxc/xc_dom_arm.c index e7d4bd0..e669fb0 100644 --- a/tools/libxc/xc_dom_arm.c +++ b/tools/libxc/xc_dom_arm.c @@ -223,6 +223,8 @@ static int set_mode(xc_interface *xch, domid_t domid, char *guest_type) domctl.domain = domid; domctl.cmd = XEN_DOMCTL_set_address_size; + domctl.u.address_size.size = 0; + for ( i = 0; i < ARRAY_SIZE(types); i++ ) if ( !strcmp(types[i].guest, guest_type) ) domctl.u.address_size.size = types[i].size; -- 2.9.4