Surface Pro 4 won't get to registration menu
-
@sarge_212 (this is a repost from another thread, but I want to see if it works with this hardware too)
If you are willing and have a general knowledge of linux, I would like you to try something.
I’ve been working on an idea about booting the FOG Client kernel (the bits of FOG code that run on the target computer to load or capture images) using a usb drive. Understand this is only for debugging purposes. Right now it is not clear in my mind if the booting issues with these newer efi based systems are with the PXE boot kernel, the FOG Client kernel, or the hand off between ipxe and the FOG kernel.
To test this I wrote a document to create a uefi boot media that will boot the fog kernel from USB. You can not capture or deploy using this kernel only access command line tools. But the point of this exercise is to see if it boots, period.
If you have a spare 2GB or larger usb flash drive, are comfortable with some linux commands and have a little time; could you follow the instructions outlined here: https://forums.fogproject.org/topic/6532/usb-boot-target-device-into-fog-debug-os/3
For the sake of the test, I only want you to execute what appears id method #3. Understand these instructions were written for ubuntu, but they should translate to Centos 7 without too much headache ( ) . At the bottom there is a copy and paste section where you can copy the commands paste them into a text editor, change the reference to the usb flash drive and then just execute the commands one after another through a remote terminal. It takes me less and 5 minutes to execute the commands once you have the rpm files installed.
For the flash drive start with a freshly formatted flash drive using a windows computer and format it fat32 (note the first step of my instructions tells linux to reformat the drive, any existing content will be lost). If you have any questions about this, please post back here.
What I want to test:
- Does it boot?
- IF it doesn’t boot is there an error message?
- Does this image boot on any other device you have that is in uefi mode?
After this test we will add in the grub insmod commands and test again. But first lets see if you can build the boot drive and get it to boot on this table as is.
-
@sarge_212 Would you be able to upload the full output of
dmesg
as a text file here if you get up your ubuntu live stick again. Or if you can get George’s FOG debug system (I really like this approach and hope that we can use this even more and maybe simplify it in the near future) that would be a great progress.Looked throught the outputs you posted and I can’t see anything in particular that I would think is causing the issue.
-
@Sebastian-Roth I am in the process of making a live debug fog usb stick now. I’ll let you guys know of the status when I get there. Thanks for all the help so far!
-
Here is the dmesg output:
0_1453846418443_dmesg.txt I’m testing the FOG debugging tool now and seeing if it will boot.
-
Okay – here is the output of both the 32-bit and 64-bit debug kernel mode selections:
error: no suitable video mode found.
Booting to blind mode
_Is there a way for me to make the debugging go on no video mode? It isn’t accepting keyboard input at this point so I think it stops here.
I can however hit “c” at the boot menu and get to grub command shell. If there is anything there I can run to provide insight, I’d be more than happy to do so.
-
@sarge_212 said:
Okay – here is the output of both the 32-bit and 64-bit debug kernel mode selections:
error: no suitable video mode found.
Booting to blind mode
_Is there a way for me to make the debugging go on no video mode? It isn’t accepting keyboard input at this point so I think it stops here.
This is the same error I saw with my testing so this is good (kind of). Now I want you to edit the grub.cfg file and change the 64 bit section. to add the insmod command to add video support via grub.
menuentry "FOG 64-bit Debug Kernel" { insmod all_video linux /boot/bzImage loglevel=7 init=/sbin/init root=/dev/ram0 rw ramdisk_size=127000 pcie_aspm=off consoleblank=0 isdebug=yes initrd /boot/init.xz }
-
What we are trying to identify is if this issue with the Surface Pro 4 is with the FOG kernel or the hand off between ipxe and the fog kernel. Right now we are not sure which part is falling down. If we can usb boot the fog kernel and it works in debug mode then we are pretty sure where the problem isn’t.
Thank you for giving us a hand with this issue, its bigger than just the surface pro. The uefi booting is here to stay, so we have to work it out.
-
So,
It booted and gave a FOG menu with some items to choose from. This is further than I’ve got in a while. Here is a shot of what it looks like:
-
No worries at all on helping out. I’m glad to provide some help in the development of FOG. FOG is a great tool and we love using it in our environment, and it really rocks, as do you gents!
-
@sarge_212 So for the fog menu info if you press enter a few times, you should end up at a command prompt.
This is GREAT! on the positive side the fog kernel does work for the surface pro 4. Now we need to identify why the hand-off from ipxe to the fog kernel is failing, but at least the devs have a direction!!
Thank you for your help with this.
-
Cool. I’m ready to run some command-fu on this thing and provide output as needed.
-
@sarge_212 I hate to keep going back to the well on this one. But do you have a working EFI system that does do the hand off between ipxe and the fog kernel without issue?
What I’m looking for is if you have one of these systems, does the fog debug flash drive boot without the insmod command? We are trying to see if the insmod video… fixes the grub boot. Where some systems don’t need this command and some do, and the ones that don’t need the insmod command boot correctly via ipxe into the fog kernel. (wow that sounding like a lot of words to explain a simple process). I can tell you for the Dell e6220 I have, it requires the insmod command and does not boot in efi via ipxe.
-
@george1421 I can certainly try it. I have some old hardware but not sure what to test on. We have several generations of Dell Latitudes if that could be of use. E6420, E6430 and the like. We also are using optiplex 9020s in our environs so I can test on those. Isn’t it possible to switch from BIOS to UEFI as well in the setup of the dell systems? I’ll have a look at that. So basically I’ll do the following:
EFI boot to see what happens on a system if it is the same behavior as the surface
I’ll check to see if the hand off works but I will need to switch back the kernels to the trunk kernels. || sidenote: when I needed to image a machine for whatever reason, the new kernels{bzImage, bzImage32, init.xz, init_32.xz}, didn’t work. I got some errors imaging with the new kernels on the 1.2.0 fog (it’s that bad karma of mixing kernels) I’m toying with the idea of creating another FOG server for TRUNK version to see what it would do and how I could image from that. However, for now I’ll mess with the UEFI settings and see how far I get.
-
@sarge_212 Don’t go through extra effort if you don’t have any systems you know of that pxe boot properly today in efi mode. I have the same systems in my test lab and will test them tomorrow with the latest fog build. Don’t disrupt your current production environment.
I’m just trying to track down a ipxe efi booting system that is successful today. Then try to boot the debug kernel without the insmod video command. This will tell us if the insmod video is the true issue or just happens to fix a different issue.
-
@george1421 Just FYI – Tried ipxe efi booting a Dell Optiplex 9020. It gets some what into it and then errors with an iPXE error:
tftp://10.x.x.x/default.ipxe… ok
http://10.x.x.x/fog/service/ipxe/boot.php...ok
http://10.x.x.x/fog/service/ipxe/fogbg.png …ok
Could not configure console: Error 0x7f4ce08e (http://ipxe.org/7f4ce08e)
could not boot: error (same error)Chainloading failed, hit ‘s’ for the iPXE shell: reboot in 10 seconds
Anyway…that’s that.
-
@sarge_212 said:
Just FYI – Tried ipxe efi booting a Dell Optiplex 9020.
I use ipxe.efi for the Optiplex 9020 at work. It works fine. Try that?
-
@sarge_212 said:
Could not configure console: Error 0x7f4ce08e (http://ipxe.org/7f4ce08e)
Anyway…that’s that.Interesting, could not configure console (video). Not trying to draw a conclusion here, but this sounds similar to “No suitable video mode found. Booting in blind mode” Hmmmm… No solution in mind yet, but Hmmmmmmm…
-
@sarge_212 his is 1.2.0, right? Can you open the file:
/var/www/{,html}/fog/lib/fog/BootMenu.class.php
Then comment the line number (again from 1.2.0 BootMenu.class.php) 684?
Make it read:
//print "console --picture $this->booturl/ipxe/bg.png --left 100 --right 80\n";
-
@Tom-Elliott Did that. Interesting to note – I ipxe efi booted the Optiplex 9020. I get the registration menus without any background (as expected) then it gets to the point where it kernel panics (same point the surface is getting stuck on) This is on FOG 1.2.0 with the regular 1.2.0 kernels (4.1.2 I believe). I may test on the previous kernel I was on before all of this and try that or try it on the new trunk kernels I pulled from a trunk fog install a few days ago. I’ll do some testing and let you know.
-
I did try this with the default kernels I had before all this and it looks like it still won’t work with uefi. Are there any commands that would be helpful that I could run in the fog debug environment?