> Fwiw, I took a little closer look at the squashfs code. I still don't
> quite understand it, but I sprinkled some printk()'s and got a better
> idea of what is happening.
> 
> With a root.squashfs of 6428672 bytes, we get the error in a call:

Actually, the 6428672 bytes was from a later trial. Sorry for the
confusion. I'm not sure what the real root.squashfs size was
anymore. Gah. I'll need to redo it.

> 
>   
> squashfs_read_data(sb=(ptrval),index=0,length=6427986,next_index=16777224,output=
>   (null))
> 
> it enters the loop at fs/squashfs/block.c:122 with b=0; bytes=-338; length=8; 
> cur_index=0
> 
>     for (b = 0; bytes < length; b++, cur_index++) {
>         bh[b] = sb_getblk(sb, cur_index);
>         if (bh[b] == NULL)
>             goto block_release;
> 
> sb_getblk() must return NULL, because it goes to block_release and falls
> through to print the error message and exits with an error.


-- 
Russell Senior, President
[email protected]

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to