unable to boot HP z240 in UEFI
-
@abos_systemax While this is probably not a value added activity, have you updated the firmware on this device to the latest release?
-
@george1421 No, and I am also not allowed to because our clients work with ‘certifications’ for specific BIOS/Firmware levels
-
@george1421 said:
Didn’t you have a conversation with a HP tech a while ago when we had a HP device failing to transition between iPXE and bzImage. I think we also talked about GRUB in that discussion.
Yes I had a very long discussion with some people from HP and the Insyde UEFI firmware guys! A couple of weeks forth and back but finally we (they) managed to find the issue in the firmware and gave us an updated version. Check out the lengthy discussion on the forum about the HP X2 210 tablet. Long story short I really hope that we are not facing the same issue with those z240 machines!!!
@abos_systemax There is a simple test to see if this is the same problem (preperation can be done on windows or linux!):
- get an (empty) USB key and format with FAT32/VFAT
- mount and create directory
EFI\BOOT
(windows) orEFI/BOOT
(linux) on the newly formated USB key - download the latest kernel binary and put into this directory but renaming it to
BOOTX64.EFI
- boot the machine (UEFI boot, secure boot off, boot from USB)
Either you see pretty much nothing (then we might have the same issue as mentioned above) or you see some boot messages (YEAH!) which will end in a kernel panic - perfectly fine as we are missing initrd and kernel boot parameters on the USB key…
-
I am afraid, that I am not seeing anything after booting to the USB.
How did you resolve the HP X2 210’s?reading the topic linked above… -
@abos_systemax said:
No, and I am also not allowed to because our clients work with ‘certifications’ for specific BIOS/Firmware levels
Is there any chance a new UEFI version will be “certified” any time soon if this is preventing you from PXE booting?
One dirty hack would be to use a patched kernel that is skipping the PCI initialization done by the UEFI kernel code. This is very ugly and might cause other issues I don’t know about yet. Well, let’s start by trying my old debugging kernels. Download old/bzImage_ad (put it on USB key same as before) which should give you something like this. Please take a picture of what you see on screen!!
If you see similar messages on screen (please take a picture so we know what you see as well!) then you can try the next step and get the Matthieu/bzImage_* kernels. Both are patched to skip some of the PCI UEFI init code (don’t remember which is which at the moment). See if you can get all the way through to the kernel panic.
[edit]Another way would be to create a full FOS (that small linux system booting up to do all the hard work of capturing and deploying images on the client) boot USB key. It’s not hard but would mean that you need to boot all your HP z240 machines via USB instead of PXE.[/edit]
-
I am running BIOS level 1.21, I can only Rollback to 1.11, so that is not the route to go.
I will follow the other steps, post back soonThis is what I see with the bzImage_ad
This is what I see with Mattieuh’s bzImage_rbis it me, or don’t I get Kernel Panics?
-
@abos_systemax said:
This is what I see with the bzImage_ad…
Thank god, you do not have the same faulty UEFI firmware on your machines! I think we can forget about all the things I said before and try a different path. Please go to FOG Configuration -> FOG Settings. Enable KERNEL_DEBUG and crank up the LOGLEVEL setting to 7. See this screenshot here on where to find those settings. Then PXE boot as normal. Do you see kernel messages or still nothing?
-
No change after changing the debug level.
-
@abos_systemax Can you please try the mentioned old/bzImage_ad via PXE boot? So instead of copy it to the USB key you put it onto your FOG server (
/var/www/fog/service/ipxe/bzImage
). Rename the current bzImage yo sou can easily switch back later on. Leave DEBUG options on. -
@Sebastian-Roth said in unable to boot HP z240 in UEFI:
@abos_systemax Can you please try the mentioned old/bzImage_ad via PXE boot? So instead of copy it to the USB key you put it onto your FOG server (
/var/www/fog/service/ipxe/bzImage
). Rename the current bzImage yo sou can easily switch back later on. Leave DEBUG options on.Did that, received the same output as when I booted to it from USB
-
@abos_systemax said:
Did that, received the same output as when I booted to it from USB
Ok, then I need a bit more time to think about the next debugging steps. Thanks for being extremely responsive so far. Makes it a lot easier when I don’t have to wait days for answers and pictures. From what I see this is not an issue with the handoff from iPXE to the kernel as we see the very early debug messages…
Here is another quick one I just remembered. Using one of the mentioned debugging kernels (or maybe bzImage_epk found in the same gdrive) you should be able to enable the so called early print messages in the kernel by adding
earlyprintk=efi
to the host kernel parameter settings field. Any more output with this? -
@Sebastian-Roth
Same goes for your responses. We are very happy with your quick responses.Sadly, I just got kicked out of the company because we’re closing for the night. But I will try the suggested option when I’m back tomorrow. Will post back as soon as I can.
-
Hi @Sebastian-Roth
I’ve tried the bzImage_epk with the specified host settings, but I still receive no messages; only ‘bzImage…OK!, init.xz…OK!’ and then nothing -
I’ve noticed the weirdest things of all: The Capture task is actually running while the display stays black.
So, in fact the kernel and init.xz is just running as usual, but the display is not displaying anything:edit: the display is not completely Black, it is ‘frozen’ in the iPXE output; so the last data displayed is
bzImage…OK
Init.xz…OK -
@abos_systemax Well that is interesting. In uefi mode there is no video output from the kernel, but actually it is working.
I had a similar experience with a different project where we attempted to uefi boot a linux kernel from a usb drive and use grub as a boot loader. The system would run but there was no output form the kernel on the console.
This kind of sounds like a buggy firmware issue or the bzImage doesn’t have the proper kernel level drivers for interacting with this HP video controller (I doubt).
I guess you have to decide is this acceptable to you (working but no video) or try to continue to debug this problem.
-
@george1421 This is acceptable for the devices at this stage. The Task management window actually displays the current task status so that is ‘enough’ vision for us.
Although i’d be happy to help in the debug process, these 3 devices really have to go asap; so maybe we’d be able to run some more tests tomorrow, or else we have to wait till new machines get ordered.
-
@abos_systemax Wow, great finding! I am wondering if other people who have similar issues are also just not seeing anything on screen or if it really hangs. Searching for an explanation on the net I found those two things: https://bugzilla.redhat.com/show_bug.cgi?id=496134 and https://www.kernel.org/doc/Documentation/fb/efifb.txt
Can you please try adding
video=efifb
(and the various variations likevideo=efifb:mini
) as the host’s kernel parameter option?@george1421 said:
… transition between iPXE and bzImage
So we are back to this being an ipxe-to-kernel-handoff problem as it does not seem to be an issue when booting the same kernel from USB! You were right and I shall listen to what you say!
-
none of the kernel options above yielded other results than no kernel options at all
-
@Sebastian-Roth said in unable to boot HP z240 in UEFI:
So we are back to this being an ipxe-to-kernel-handoff problem as it does not seem to be an issue when booting the same kernel from USB! You were right and I shall listen to what you say!
What, wait, what did I say. I have an idea it was really brilliant, but I think I missed it
(just a lucky choice of words on my part, i fear)
I remember when I was documented the FOS_L grub boot drive. https://forums.fogproject.org/topic/6532/usb-boot-target-device-into-fog-os-live-fosl-for-debugging I had to enter these commands into grub to get the video to work [insmod efi_gop, efi_uga, font]. I think I had a black screen to. Maybe it WAS working. It might be interesting to see if usb booting into FOS-L environment provided any video output.
-
@abos_systemax Thanks again for the quick response. Then I guess I am lost for now. Will contact the iPXE developers to see what they might know about it. Most probably this won’t be before the weekend I’m afraid.
@george1421 said:
… efi_gop, efi_uga … It might be interesting to see if usb booting into FOS-L environment provided any video output.
Yeah, I remember those GRUB modules were needed for UEFI machines. Definitely a good idea to check out if booting the kernel via GRUB makes a difference. Please download debug_v2.iso and dump it to your USB key (
dd if=debug_v2.iso of=/dev/sdX
). Do you see anything on screen after selecting 64 bit from the GRUB menu?