From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: [PATCH OSSTEST v8 10/14] Debian: Handle lack of bootloader support in d-i on ARM. Date: Wed, 8 Jul 2015 13:30:58 +0100 Message-ID: <1436358662-12886-10-git-send-email-ian.campbell@citrix.com> References: <1436358648.23508.32.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1436358648.23508.32.camel@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: ian.jackson@eu.citrix.com Cc: Ian Campbell , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org Debian doesn't currently know what bootloader to install in a Xen guest on ARM. We install pv-grub-menu above which actually does what we need, but the installer doesn't treat that as a "bootloader". Most ARM platforms end up installing a u-boot boot.scr, based on a platform whitelist. This doesn't seem appropriate for us. Grub is not available for arm32. For arm64 we will eventually end up with in-guest UEFI and therefore grub-efi and things will work normally. I'm not sure what the answer is going to be for arm32. This patch enables the workaround for Wheezy, Jessie and Sid, post-Jessie should be enabled as we add them. (Pre-wheezy does not support running as a Xen guest on ARM so we don't test them at all). Signed-off-by: Ian Campbell Acked-by: Ian Jackson --- v4: Handle sid too v3: New --- Osstest/Debian.pm | 14 ++++++++++++-- ts-debian-di-install | 6 ++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm index 7c94b6c..4669047 100644 --- a/Osstest/Debian.pm +++ b/Osstest/Debian.pm @@ -865,8 +865,8 @@ END return $preseed; } -sub preseed_create_guest ($$;@) { - my ($ho, $sfx, %xopts) = @_; +sub preseed_create_guest ($$$;@) { + my ($ho, $arch, $sfx, %xopts) = @_; my $suite= $xopts{Suite} || $c{DebianSuite}; @@ -913,6 +913,16 @@ d-i grub-installer/bootdev string /dev/xvda END + # Debian doesn't currently know what bootloader to install in a + # Xen guest on ARM. We install pv-grub-menu above which actually + # does what we need, but the installer doesn't treat that as a + # "bootloader". + logm("\$arch is $arch, \$suite is $suite"); + $preseed_file.= (<$suite, PvMenuLst=>($bl eq "pvgrub")); + $ps_url = preseed_create_guest($gho, $arch, '', + Suite=>$suite, + PvMenuLst=>($bl eq "pvgrub")); $extra_disk = ""; } @@ -202,7 +204,7 @@ END ($method_cfg,$extra_disk) = setup_netinst($tmpdir, $arch); - $ps_url = preseed_create_guest($gho, '', CDROM=>1); + $ps_url = preseed_create_guest($gho, $arch, '', CDROM=>1); } else { -- 2.1.4