[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [OSSTEST Nested PATCH v8 1/7] parsing grub which has 'submenu' primitive
On Mon, 2015-04-13 at 17:19 -0400, longtao.pang wrote: > From a hvm kernel build from Linux stable Kernel tree, > the auto generated grub2 menu will have 'submenu' primitive, upon the > 'menuentry' items. Xen boot entries will be grouped into a submenu. This > patch adds capability to support such grub formats. > > Signed-off-by: longtao.pang <longtaox.pang@xxxxxxxxx> I think this won't work with nested submenus, but I assume we don't see them at least with Jessie so we can live with this. I'm also not sure it would cope with a submenu declared within a function, but again I expect we aren't seeing those in practice. So given this handles the grub.cfg files we see in practice: Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> I'd also like to see some of our delta in overlay/etc/grub.d/20_linux_xen which was added to remove the possibility of submenus to be removed, see below. Wei, per the comment below I think we should update the grub BR with a fixed patch, like the attached. Ian. ----- From e082a82a3036152797447ac4c809e3b67e68cd12 Mon Sep 17 00:00:00 2001 From: Ian Campbell <ian.campbell@xxxxxxxxxx> Date: Tue, 21 Apr 2015 11:06:06 +0100 Subject: [PATCH] grub: remove patch to disable submenu from 20_linux_xen overlay setupboot_grub2 now supports submenus, so we can reduce our delta vs upstream a bit. I started by extracting 20_linux_xen from http://snapshot.debian.org/archive/debian/20130703T094657Z/pool/main/g/grub2/grub-common_1.99-27%2Bdeb7u2_amd64.deb and then applying the patch at http://savannah.gnu.org/file/grub.patch?file_id=32276 (the patch from grub bug #42420 at http://savannah.gnu.org/bugs/?43420) and reinstating the comment at the top of the file (modified to drop the reference to the Debian bug. This left me with some spurious changes: @@ -93,7 +93,7 @@ linux_entry () if test ! -e "${xen_dirname}/${xenpolicy}" ; then return fi - xen_args=`echo $xen_args flask=enforcing` + xen_args=`echo $xen_args flask_enabled=1 flask_enforcing=1` if ${recovery} ; then title="$(gettext_quoted "%s, with Xen %s (XSM enabled) and Linux %s (recovery mode)")" else @@ -137,7 +137,6 @@ EOF echo '$message' module ${rel_dirname}/${xenpolicy} EOF - fi cat << EOF } EOF I think these are bugs in the patch in the grub BTS, which were fixed while iterating over the XSM series in osstest but didn't make it into the upstream version, the fixes to those bugs are reverted byu the above. So I have manually reverted them. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- Wei, if you agree wrt those changes I'll update the bug, or perhaps you want to? --- overlay/etc/grub.d/20_linux_xen | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/overlay/etc/grub.d/20_linux_xen b/overlay/etc/grub.d/20_linux_xen index 5315e2a..aaead1b 100755 --- a/overlay/etc/grub.d/20_linux_xen +++ b/overlay/etc/grub.d/20_linux_xen @@ -1,7 +1,7 @@ #! /bin/sh # Copied from the identically named file in grub-common 1.99-27+deb7u2. -# This version fixed Debian bug #690538 and GRUB bug #43420. +# This version fixes GRUB bug #43420. set -e @@ -173,6 +173,7 @@ while [ "x${xen_list}" != "x" ] ; do xen_dirname=`dirname ${current_xen}` rel_xen_dirname=`make_system_path_relative_to_its_root $xen_dirname` xen_version=`echo $xen_basename | sed -e "s,.gz$,,g;s,^xen-,,g"` + echo "submenu \"Xen ${xen_version}\" {" while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 @@ -214,5 +215,6 @@ while [ "x${xen_list}" != "x" ] ; do list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '` done + echo "}" xen_list=`echo $xen_list | tr ' ' '\n' | grep -vx $current_xen | tr '\n' ' '` done -- 2.1.4 Attachment:
grub.v2.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |