From 826a8a830840408da18bda85c5250288172c7248 Mon Sep 17 00:00:00 2001 From: Markus Hilger Date: Wed, 18 May 2022 18:19:07 +0200 Subject: [PATCH] Support x86, ppc64 and arm in grub Arm and ppc64 do not have linuxefi and initrdefi. --- xCAT-server/lib/xcat/plugins/grub2.pm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/xCAT-server/lib/xcat/plugins/grub2.pm b/xCAT-server/lib/xcat/plugins/grub2.pm index b1e5becdc..cbe57965c 100644 --- a/xCAT-server/lib/xcat/plugins/grub2.pm +++ b/xCAT-server/lib/xcat/plugins/grub2.pm @@ -254,14 +254,19 @@ sub setstate { $protocolrootdir = $tftpdir; } + my $efi = ""; + if ($nodearch =~ /x86/i) { + $efi = "efi"; + } + if ($kern and $kern->{kcmdline}) { - print $pcfg " linux $protocolrootdir/$kern->{kernel} $kern->{kcmdline}\n"; + print $pcfg " linux$efi $protocolrootdir/$kern->{kernel} $kern->{kcmdline} BOOTIF=\$net_default_mac\n"; } else { - print $pcfg " linux $protocolrootdir/$kern->{kernel}\n"; + print $pcfg " linux$efi $protocolrootdir/$kern->{kernel} BOOTIF=\$net_default_mac\n"; } print $pcfg " echo Loading initial ramdisk ...\n"; if ($kern and $kern->{initrd}) { - print $pcfg " initrd $protocolrootdir/$kern->{initrd}\n"; + print $pcfg " initrd$efi $protocolrootdir/$kern->{initrd}\n"; } print $pcfg "}";