8.0-current 200809 snapshot CD boot problem

Marcel Moolenaar xcllnt at mac.com
Sun Sep 28 18:06:13 UTC 2008


On Sep 27, 2008, at 11:40 PM, Peter Grehan wrote:

> Hi Marcel,
>
>> o  I-cache coherency
>
> The culprit could be the code fragment in sys/boot/ofw/libofw/ 
> elf_freebsd.c:__elfN(ofw_loadfile),
>
>        if (!strcmp((*result)->f_type, "elf kernel"))
>                __syncicache((void *) (*result)->f_addr, (*result)- 
> >f_size);
>
> If f_addr isn't the start of the text segment i.e. if the initial  
> page wasn't included, then that is what is blowing up.

It looks like f_addr is the correct (virtual) load
address. I think the problem relates to whether the
starting address falls withing the first page, given
that:
o  We bcopy the first page to avoid reading twice,
o  We need to flush the D-cache before we can sync
    the I-cache.

We do dcbst before we icbi, but I'm wondering if
there isn't a bug there. What if we need to sync
after every dcbst?

-- 
Marcel Moolenaar
xcllnt at mac.com





More information about the freebsd-ppc mailing list