Raspberry pi not ready to self-host yet?
Andrew Turner
andrew at fubar.geek.nz
Mon Jul 1 19:27:30 UTC 2013
On Mon, 1 Jul 2013 01:33:59 -0700
Oleksandr Tymoshenko <gonzo at bluezbox.com> wrote:
>
> On 2013-07-01, at 1:14 AM, Jordan Hubbard <jordan.hubbard at gmail.com>
> wrote:
>
> > Well, I managed to build and install an RPI-B kernel on the PI
> > itself last night using gcc as the compiler, but it doesn't boot.
> > I get the dreaded "kernel boot args: (null)" and then a hang before
> > even getting into the device probes.
>
> It crashes due to INVARIANTS options in kernel config. I'm going to
> look into this problem some time next week unless someone beats me
> to it. Just disable them for now.
There are two panics:
1. In vm_map_zinit() the sx lock fails to initialise because it thinks
it is already initialised. This is because the bit to check this has
been set in uma_startup() by the line:
slab->us_flags = UMA_SLAB_BOOT;
This is only a problem with INVARIANTS because the location of
us_flags changes when it is enabled, and in this case the slab is
reused as the memory allocated without zeroing it out first.
2. uma_dbg_alloc/uma_dbg_free use atomic operations on memory where the
cache appears to not be set to write-back. Attempting this is not
guaranteed to work. I haven't looked into this fully to see if this
is correct, but from the panic I was seeing this appears to be the
case.
I have been talking to Jeff Roberson on panic 1. As I'm nit sure if my
assessment of panic 2 is correct I haven't looked at how to fix it.
Andrew
More information about the freebsd-arm
mailing list