Hi,
Good to hear more people trying our nuttx on x86_64.
> I am trying to run nuttx in a Qemu x86_64 VM but seem to be hitting some
> issue during early boot (as far as I can tell). I am using commit
> deb3b13759fe08 ("Udate TODO List") from yesterday.
That's quite new.
I was recently working with release 9.0 on a hypervisor called
jailhouse without issues.
I will try to take a look.
> Following the instructions for the board qemu-intel64, I configured and
> built the nuttx.elf using -
>
> ./tools/configure.sh qemu-intel64:nsh
> make
Although I ported x86_64 nuttx, I have zero experience with nsh port.
I only did the ostest.
But as you stated below, it doesn't seem like an application related
problem, but more architecture related..
> Seeing the output on the serial console, it feels like the cpu gets into
> a reboot loop with BIOS messages followed by grub loading the nuttx
> binary.
> ...
> Single stepping through the early startup code
> (arch/x86_64/src/intel64/intel64_head.S) suggests an unhandled exception
> is taken at the start of __nxstart. Considering the code has a comment
> indicating that it's executing from high memory, I am guessing an issue
> with the memory setup before getting here is causing an issue.
The processor has triple faulted and resets itself.
That's why it is looping.
I can think of a GP or a PF Fault happening during booting.
> I am using qemu[0] and gcc[1] shipped with Debian Bullseye (testing).
These shouldn't be an issue.
I have seen aliked looping problem during porting, mainly due to
improperly setup GPT causing GP or page table causing PF.
I suppose you didn't modify the code, therefore it seems strange to me.
BR,
--
Yang Chung Fan (楊宗凡) (ヤン ゾン ファン)