Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Sep 2008 23:40:50 -0700
From:      Peter Grehan <grehan@freebsd.org>
To:        Marcel Moolenaar <xcllnt@mac.com>
Cc:        freebsd-ppc@freebsd.org
Subject:   Re: 8.0-current 200809 snapshot CD boot problem
Message-ID:  <48DF26F2.1000209@freebsd.org>
In-Reply-To: <11FEA924-DB76-46E1-BF79-A26206F796C0@mac.com>
References:  <b9c23c9f0809230355y26d463c4s5a60a22293daa05d@mail.gmail.com>	<b9c23c9f0809230952n159c3179t90b6a542eaf94a4f@mail.gmail.com>	<b9c23c9f0809231028j3d20b1bcgc8f4aaec15fe23d2@mail.gmail.com>	<48DD91A4.2060306@freebsd.org>	<b9c23c9f0809270348t7c4f1976y3134d2d5aa2ee15@mail.gmail.com>	<263AF44F-FC15-4700-B93B-B0DE07A17B40@mac.com>	<b9c23c9f0809271354j500d58f2o7c2a039a42d4caa5@mail.gmail.com> <11FEA924-DB76-46E1-BF79-A26206F796C0@mac.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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.


> Quick question: On ARM and ia64 you need to sync the
> D-cache before you can make the I-cache coherent. That's
> because the I-cache is made coherent with memory and
> not with the D-cache. How's that on PowerPC?

  Same - see powerpc/syncicache.c where the d-cache is flushed before 
the invalidating the i-cache.

later,

Peter.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48DF26F2.1000209>