Re: [PATCH] squashfs broken when pageszie > blocksize

From: Phillip Lougher
Date: Mon Apr 13 2009 - 18:51:57 EST


Doug Chapman wrote:
Squashfs is broken on any system where the pageszie is larger than either
the block size of the squashfs image or larger than the metadata size (8192).
This is easily fixed by ensuring cache->pages is always > 0.

Signed-off-by: Doug Chapman <doug.chapman@xxxxxx>
Cc: Phillip Lougher <phillip@xxxxxxxxxxxxxxxxxxx>


Good catch. BTW what is the page size on ia64?

For completeness there should also be a mount time check that
the block size used in the Squashfs filesystem is at least as
large as the pagesize. This doesn't matter for metadata
(size 8192), but does matter for data blocks, because Squashfs
read_page doesn't handle block_size < pagesize.

Squashfs read_page used to handle block_size < pagesize but I
removed that code when I removed filesystem support for block_sizes
< 4K. If ia64 users (or any other architecture with larger than
4K pagesizes) want to use Squashfs filesystems with blocksizes less
than their pagesize, then I can put that code back in.

Phillip

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/