From: kfraser@localhost.localdomain Date: Fri, 5 Jan 2007 11:03:16 +0000 (+0000) Subject: Xen 3.0.3 pre-pended all configuration prior to the user-specified X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~15422^2~78 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=c082fcbec5b5f09cdff8baed09786b81a40ef14e;p=xen.git Xen 3.0.3 pre-pended all configuration prior to the user-specified args in the boot cmdline. Restore this behaviour to fix incompatabilities with fragile parsers in some domU kernels. Signed-off-by: John Levon --- diff --git a/tools/python/xen/xend/XendConfig.py b/tools/python/xen/xend/XendConfig.py index f003c6e9eb..cfd2c20e6e 100644 --- a/tools/python/xen/xend/XendConfig.py +++ b/tools/python/xen/xend/XendConfig.py @@ -1113,15 +1113,19 @@ class XendConfig(dict): # configuration log.debug("update_with_image_sxp(%s)" % scrub_password(image_sxp)) - kernel_args = sxp.child_value(image_sxp, 'args', '') + kernel_args = "" # attempt to extract extra arguments from SXP config arg_ip = sxp.child_value(image_sxp, 'ip') if arg_ip and not re.search(r'ip=[^ ]+', kernel_args): - kernel_args += ' ip=%s' % arg_ip + kernel_args += 'ip=%s ' % arg_ip arg_root = sxp.child_value(image_sxp, 'root') if arg_root and not re.search(r'root=', kernel_args): - kernel_args += ' root=%s' % arg_root + kernel_args += 'root=%s ' % arg_root + + # user-specified args must come last: previous releases did this and + # some domU kernels rely upon the ordering. + kernel_args += sxp.child_value(image_sxp, 'args', '') if bootloader: self['_temp_using_bootloader'] = '1'