|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH OSSTEST v2 15/19] Debian: grub2: Use GRUB_CMDLINE_LINUX_XEN_REPLACE(_DEFAULT)
This overrides GRUB_CMDLINE_LINUX(_DEFAULT) which we were previously
editing but only for the Xen entries, meaning that we don't switch to
console=hvc0 for the native cases (i.e. don't break them).
We do however want to edit GRUB_CMDLINE_LINUX(_DEFAULT) to remove
"quiet" if present, since it is useful to people, especially those
using standalone mode as a provisioning tool, wanting to e.g. compare
a boot under Xen with the native case.
This has been supported since Wheezy but in any case we supply our own
20_linux_xen grub generator based on Wheezy which supports this.
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
Osstest/Debian.pm | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index d2a7be9..31aa1e6 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -507,7 +507,7 @@ sub setupboot_grub2 ($$$$) {
$v =~ s/^\s*([\'\"])(.*)\1\s*$/$2/;
$k{$k}= $v;
}
- next if m/^GRUB_CMDLINE_(?:XEN|LINUX).*\=|^GRUB_DEFAULT.*\=/;
+ next if
m/^GRUB_CMDLINE_(?:XEN|LINUX(?:_XEN_REPLACE)?(?:_DEFAULT)?).*\=|^GRUB_DEFAULT.*\=/;
print ::EO;
}
print ::EO <<END or die $!;
@@ -521,11 +521,20 @@ GRUB_CMDLINE_XEN="$xenhopt"
END
foreach my $k (qw(GRUB_CMDLINE_LINUX GRUB_CMDLINE_LINUX_DEFAULT)) {
my $v= $k{$k};
+
+ # Tailor native case
$v =~ s/\bquiet\b//;
+ print ::EO "$k=\"$v\"\n" or die $!;
+
+ # Xen overrides
$v =~ s/\b(?:console|xencons)=[0-9A-Za-z,]+//;
$v .= " $xenkopt" if $k eq 'GRUB_CMDLINE_LINUX';
- print ::EO "$k=\"$v\"\n" or die $!;
- }
+ # Ensure variable isn't zero length, or 20_linux_xen will
ignore it.
+ $v .= " ";
+ my $rk = $k;
+ $rk =~ s/LINUX/LINUX_XEN_REPLACE/;
+ print ::EO "$rk=\"$v\"\n" or die $!;
+ }
});
};
--
2.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |