Nova on a bit old CPU

Alexander Boettcher alexander.boettcher at genode-labs.com
Thu Jul 12 21:04:59 CEST 2018


On 12.07.2018 17:41, Paul Dufresne wrote:
> I spent many hours trying to figure out what is going wrong when running
> Nova on my
> Optiplex 745 machine.
> 
> I have figure out that the computer would reboot unless I commented out:
> In si.cpp constructor, the TRACE line have to be commented out.

This should not happen nor necessary to comment it out, as long as you
did not enable TRACE_SYSCALL (which is by default off).

> Id pd.cpp constructor, the Mtrr::init(); have to be commented out.
> 
> Also, to see what is going on on the screen, in:
> genode/tool/run/boot_dir/nova, I have removed novga from:
> #proc kernel_output { } { return "novga serial" }
> This allow to see some info on the screen.
> 
> My 2 CPUS are shown on the screen.
> But that's the last thing that is shown.
> It looks like the schedule call at the end of bootstrap.cpp does not
> seems to kick in.
> I am unsure where is the code that is supposed to be run from there...
> or/and why it is not run.

Check, whether the timer interrupt (local APIC) is working on your CPUs.
If they are not, the scheduling will not work properly.

You may try to add "spinner" to the kernel commandline. This gives you
some diagnostic information about all kind of events and interrupts
coming in (see chapter "Console" at the end in
contrib/nova-<hash>/src/kernel/nova/doc/specification.pdf)

Another commandline option is "keyb", which gives you (if the keyb
interrupt is working properly) on each "c" key press additional
information on the vga screen and/or serial.

Good luck,

-- 
Alexander Boettcher
Genode Labs

https://www.genode-labs.com - https://www.genode.org

Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth



More information about the users mailing list