iPXE discussion forum
UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - Printable Version

+- iPXE discussion forum (https://forum.ipxe.org)
+-- Forum: iPXE user forums (/forumdisplay.php?fid=1)
+--- Forum: General (/forumdisplay.php?fid=2)
+--- Thread: UEFI, iPXE, and HP Service Pack for ProLiant (SPP) (/showthread.php?tid=8308)



UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - fdge - 2017-01-25 21:36

I am trying to deploy SPP over the network using EFI, it works when in legacy mode, but soon we will be switching over to EFI. The servers are ML110s, ML350s, DL380s, and more...

The current message that keeps being displayed is:
Code:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU: 0 PID: 1  Comm: swapper/0 Not tainted 3.12.38-44-default #1

SPP is 2016-10

iPXE is compiled from git source on 2017-01-17 build 26050

I also tried chainloading:
syslinux.efi, it crashes.
elilo reports token is too long.
grub2 is unable to get an IP address, and using a static IP is not a reasonable option because more than one server will be running SPP and there is more than one subnet.

the ipxe menu contains:
Code:
kernel http://${ipserver}/data/hp_spp/${hpsppver}/vmlinuz initrd=initrd.img rootfstype=ramfs
initrd http://${ipserver}/data/hp_spp/${hpsppver}/initrd.img
imgargs vmlinuz media=net rw ramdisk_size=1099688 root=/dev/ram0 init=/bin/init iso1mnt=/mnt/bootdevice loglevel=3 ide=nodma ide=noraid nopat pnpbios=off vga=791 splash=silent hp_fibre showopts noexec32=off numa=off nox2apic ipappend 2 TYPE=MANUAL AUTOPOWEROFFONSUCCESS=no AUTOREBOOTONSUCCESS=no iso1=nfs://${ipserver}/opt/planb/data/hp_spp/${hpsppver}/${hpsppiso} iso1opts=timeo=120,nolock,bg,ro
boot



RE: UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - NiKiZe - 2017-01-25 21:43

There is several posts already about both HP & EFI, as well as EFI and kernels.

Let's hope your issue is simple tho..
first you use kernel and adds some options,
then initrd
and finally you have a imgargs that I think overrides the options you added on the kernel line. You can verify if this is the case with imgstat and comment out boot.

I would suggest that you add all of the arguments to the end of the kernel line, or move down the options of the kernel line down to the imgargs line

Also note this post: http://forum.ipxe.org/showthread.php?tid=7756&pid=11699#pid11699


RE: UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - fdge - 2017-01-25 23:37

I'm getting a new error
Code:
Starting initrd...
Warning!!! Unable to mount the file system

Preboot maintenance mode

/bin/ah: can't access tty; job control turned off

ipxe menu contains
Code:
kernel http://${ipserver}/data/hp_spp/${hpsppver}/vmlinuz
initrd --name initrd.img http://${ipserver}/data/hp_spp/${hpsppver}/initrd.img
imgargs vmlinuz initrd=initrd.img rootfstype=ramfs root=/dev/ram0 media=net rw ramdisk_size=1099688 init=/bin/init iso1mnt=/mnt/bootdevice loglevel=3 ide=nodma ide=noraid nopat pnpbios=off vga=791 splash=silent hp_fibre showopts noexec32=off numa=off nox2apic ipappend 2 TYPE=MANUAL AUTOPOWEROFFONSUCCESS=no AUTOREBOOTONSUCCESS=no iso1=nfs://<?php echo "{$_SERVER['SERVER_ADDR']}"; ?>/opt/planb/data/hp_spp/${hpsppver}/${hpsppiso} iso1opts=timeo=120,nolock,bg,ro
imgstat
prompt
boot



RE: UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - NiKiZe - 2017-01-25 23:49

so initrd seems to be loaded, you need to try and figure out exactly what it is trying to mount and how that fails.

And i must stress that you are using 3.12 kernel which is pre 3.16 and as such could still have the bug that prevents it from working correctly in regards of loading initrd in EFI mode.

See these references
http://forum.ipxe.org/showthread.php?tid=7813&pid=11869#pid11869
http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=819ab9941c98f18b0f8c7ffb815e4f07186d2a5f

I would start of booting this from pcbios legacy instead of EFI to make sure that the boot succeeds and everything is mounted etc, and after that try to get it running in EFI.

But this is a distribution specific issue, since the kernel is booted you might get better help from HP support, but please do keep us updated on your progress since it can help others.


RE: UEFI, iPXE, and HP Service Pack for ProLiant (SPP) - fdge - 2017-01-26 16:29

I looks like my problem for "Unable to mount the file system" was do to testing on a VM (physical servers take too long to boot).
I just needed "initrd=initrd.img" with the rest of the arguments, I now have
Code:
echo Starting ${hpsppver} HPE SPP Interactive Firmware Update
kernel http://${ipserver}/data/hp_spp/${hpsppver}/vmlinuz
initrd http://${ipserver}/data/hp_spp/${hpsppver}/initrd.img
imgargs vmlinuz initrd=initrd.img media=net rw root=/dev/ram0 ramdisk_size=1099688 init=/bin/init loglevel=3 ide=nodma ide=noraid nopat pnpbios=off vga=791 splash=silent hp_fibre showopts noexec32=off numa=off nox2apic ipappend 2 TYPE=MANUAL AUTOPOWEROFFONSUCCESS=no AUTOREBOOTONSUCCESS=no iso1=nfs://${ipserver}/opt/planb/data/hp_spp/${hpsppver}/${hpsppiso} iso1mnt=/mnt/bootdevice iso1opts=timeo=120,nolock,bg,ro
boot

For Automatic/Unattended just change
"TYPE=MANUAL AUTOPOWEROFFONSUCCESS=no AUTOREBOOTONSUCCESS=no"
to
"TYPE=AUTOMATIC AUTOPOWEROFFONSUCCESS=no AUTOREBOOTONSUCCESS=yes"

I am also using the hotfix for 2016.10
http://h20566.www2.hpe.com/hpsc/doc/public/display?sp4ts.oid=6550416&docLocale=en_US&docId=emr_na-c05350382
https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1448207324/v124380/SPP2016100-patch-pxe-initrd.tar.gz

Thank you, I understand a little more about how iPXE works.