On Wed, Jan 11, 2023 at 08:30:20AM +0000, Emmanuel Dreyfus wrote: > An interesting problem on an all-in-one HP PC. Booting > NetBSD-10.0_BETA/amd64 (or prior versions) works fine until the > kernel starts displaying its messages. At that point the screen > turns dark.
So far, the thing seems to crash very early in bootstrap, probably before main(). By adding printf in bootx64.efi (and commenting out ExitBootServices call so that I can see it), I know I reach the point where startprog64 is called. Debugging what happens after that is more tricky. This is assembly code, I am not sure I can printf from there. I try to make the machine reboot at startprog64() start to see if I just reach that place. Searching the web suggests inserting this at the begining of startprog64 could do it: /* jmp 0xffff:0 to reset */ .byte 0xea .byte 0x00 .byte 0x00 .byte 0xff .byte 0xff With that change, the all-in-one PC still hangs, while another machine does reboot. That may be a question for port-i386@, but is that debugging technique relibale? Is there something else to try? If the technique is reliable, then I can only imagine the stack got corrupted enough that the call to startprog64() does not even reach it. -- Emmanuel Dreyfus m...@netbsd.org