On Wed, Nov 22, 2006 at 12:31:10PM -0800, Trevor Hamm wrote:
> The source of the problem seems to be with squashfs. When I compare booting
> a kernel using squashfs to one using cramfs (which always seems to boot
> successfully on power-up), both are reading the troublesome page from
> /lib/ld-uClibc.so, and both are calling flush_dcache_page() on this page.
> But in the case of cramfs, flush_dcache_page() causes an immediate cache
> flush of that page (mapping_mapped(mapping) in __flush_dcache_page() is
> returning non-zero), while squashfs just marks the page as dirty and defers
> the cache flush (mapping_mapped(mapping) is returning zero). I have no idea
> what causes this difference in behaviour, but right now it appears to be a
> bug in squashfs rather than the linux-mips kernel.
There are a few other potencial and real bugs me and Atsushi have found
in squashfs. Guess there is a reason why it's not yet in the kernel ...
I'm still waiting for feedback from the squashfs author.
Ralf