> Suggestions are welcome. In the meantime I am slowly trying to debug
> this myself, mostly as a learning exercise. I've successfully built my
> own bsd.rd (using the instructions on the release(8) man page) with the
> intention of adding some debug output to narrow down where it's
> getting stuck, but I don't know my way around the kernel code.

Minor progress: I have determined that the kernel gets at least as far
as exec-ing the init process (more precisely, calling sys_execve in
init_main.c).

Not sure if that's useful or just obvious. If I have more time I will
add more debug logging, e.g. in the userspace init program, to see how
far things get. If nothing else, I'm learning a bit about the code.


Details of how I figured out init_main.c calls sys_execve:

I added a bunch of printfs to init_main.c in this commit:

  
https://github.com/falsifian/src/commit/0373dda3ef3574fe605c6173067c6220d62ebaba

With those changes, the last messages on the console (copied here by
hand) are as follows

YYY mountroot done.
iwx0: could not read firmware ...
iwx0: failed to load init firmware
YYY waking up init
YYY woke up init
YYY start_init: done waiting
YYY start_init: okay, here we go: calling sys_execve...

-- 
James

Reply via email to