xen: patch to fix ARM libxc missing variable init

Fix Xen 4.9.0 build error on ARM architecture with gcc 7:
Import upstream Xen patch 88bfbf90e35f1213f9967a97dee0b2039f9998a4

Error was:
xc_dom_arm.c:229:31: error: 'domctl.u.address_size.size' may be used
uninitialized in this function [-Werror=maybe-uninitialized]

Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
This commit is contained in:
Christopher Clark 2017-09-17 18:22:33 -07:00 committed by Bruce Ashfield
parent 6aa755e493
commit 644b66f83d
2 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,36 @@
commit 88bfbf90e35f1213f9967a97dee0b2039f9998a4
Author: Bernd Kuhls <bernd.kuhls@t-online.de>
Date: Sat Aug 19 16:21:42 2017 +0200
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 <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
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;

View File

@ -1,7 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
require xen.inc
SRC_URI = " \
https://downloads.xenproject.org/release/xen/${PV}/xen-${PV}.tar.gz \
file://fix-libxc-xc_dom_arm-missing-initialization.patch \
"
SRC_URI[md5sum] = "f0a753637630f982dfbdb64121fd71e1"