Dear all,
I tried building the Fiasco kernel (x86_64, from svn) together with the hello demo inside a qemu as it is shown on the website under "Getting started".
Unfortunately the kernel traps while booting (Unexpected trap while booting Fiasco). The trap number seems to be invalid (-8029759185026510704). Any pointers towards where to look for a fix?
Cheers Markus
Hi,
On Wed Aug 08, 2012 at 11:35:20 +0000, Markus Pfeiffer wrote:
I tried building the Fiasco kernel (x86_64, from svn) together with the hello demo inside a qemu as it is shown on the website under "Getting started".
Unfortunately the kernel traps while booting (Unexpected trap while booting Fiasco). The trap number seems to be invalid (-8029759185026510704). Any pointers towards where to look for a fix?
Works for me. The website uses 32 bit Qemu ('qemu'), did you use qemu-system-x86_64?
Adam
Dear Adam,
On Thu, Aug 09, 2012 at 03:33:16PM +0200, Adam Lackorzynski wrote:
Hi,
On Wed Aug 08, 2012 at 11:35:20 +0000, Markus Pfeiffer wrote:
I tried building the Fiasco kernel (x86_64, from svn) together with the hello demo inside a qemu as it is shown on the website under "Getting started".
Unfortunately the kernel traps while booting (Unexpected trap while booting Fiasco). The trap number seems to be invalid (-8029759185026510704). Any pointers towards where to look for a fix?
Works for me. The website uses 32 bit Qemu ('qemu'), did you use qemu-system-x86_64?
Yes, I am running on archlinux 64 bit, I also tried qemu alone and different options for -cpu and -machine. GCC version is 4.7.1 and qemu version is 1.1.1.
I tried narrowing the problem down and found that the problem seems to be that Cpu::boot_cpu() returns NULL in kernel_main in main-ia32-64.cpp, So I would suspect that this is due to some weird thing in the build toolchain going wrong and not calling the constructors of Cpu or Per_cpu correctly.
(Disclaimer, I have only been reading this code for a few hours, so I by no means know whether this is actually the cause).
Cheers, Markus
On Thu Aug 09, 2012 at 13:50:25 +0000, Markus Pfeiffer wrote:
Dear Adam,
On Thu, Aug 09, 2012 at 03:33:16PM +0200, Adam Lackorzynski wrote:
Hi,
On Wed Aug 08, 2012 at 11:35:20 +0000, Markus Pfeiffer wrote:
I tried building the Fiasco kernel (x86_64, from svn) together with the hello demo inside a qemu as it is shown on the website under "Getting started".
Unfortunately the kernel traps while booting (Unexpected trap while booting Fiasco). The trap number seems to be invalid (-8029759185026510704). Any pointers towards where to look for a fix?
Works for me. The website uses 32 bit Qemu ('qemu'), did you use qemu-system-x86_64?
Yes, I am running on archlinux 64 bit, I also tried qemu alone and different options for -cpu and -machine. GCC version is 4.7.1 and qemu version is 1.1.1.
I tried narrowing the problem down and found that the problem seems to be that Cpu::boot_cpu() returns NULL in kernel_main in main-ia32-64.cpp, So I would suspect that this is due to some weird thing in the build toolchain going wrong and not calling the constructors of Cpu or Per_cpu correctly.
I just tried it with a recent post 4.7.1 build (4.7.2) and it worked. Could you try a different gcc to check this possiblity (e.g. some other distribution in a chroot)?
Adam
Hello again
On Fri, Aug 10, 2012 at 11:16:07PM +0200, Adam Lackorzynski wrote:
I just tried it with a recent post 4.7.1 build (4.7.2) and it worked. Could you try a different gcc to check this possiblity (e.g. some other distribution in a chroot)?
So, I built the kernel on gcc-4.7.0 from pkgsrc on DragonFly, and lo and behold the kernel seems to work (at least it boots) and then page faults later while running the hello application, this might be something entirely different now, and I might have to investigate what could have gone wrong. (DragonFly build of the svn version fails because of -nostdinc and stddef.h includes sys/types.h, so I just added /usr/include again which might have caused a mess)
[...] No fpage received MOE: cmdline: moe rom/hello.cfg MOE: Starting: rom/ned rom/hello.cfg MOE: loading 'rom/ned' L4Re[rm]: unhandled read page fault @0 pc=1044b9e L4Re: unhandled exception: pc=0x1044b9e
Thanks for the help so far. As soon as ArchLinux updates their gcc I will try again and try to find out whether there's something funny going on with ArchLinux' multilib compiler.
Cheers, Markus
Hi,
On Wed, Aug 08, 2012 at 11:35:20AM +0000, Markus Pfeiffer wrote:
Unfortunately the kernel traps while booting (Unexpected trap while booting Fiasco). The trap number seems to be invalid (-8029759185026510704). Any
This value is 0x9090909090909090 where 0x90 is NOP on x86. Maybe this can be a hint...
regards Christian
l4-hackers@os.inf.tu-dresden.de