提交 a37b06d5 编写于 作者: D Doug Chapman 提交者: Phillip Lougher

Squashfs: fix breakage when page size > metadata block size

Squashfs is broken on any system where the page size is larger than
the metadata size (8192).  This is easily fixed by ensuring cache->pages
is always > 0.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: NDoug Chapman <doug.chapman@hp.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NPhillip Lougher <phillip@lougher.demon.co.uk>
上级 1d80cac0
...@@ -252,6 +252,7 @@ struct squashfs_cache *squashfs_cache_init(char *name, int entries, ...@@ -252,6 +252,7 @@ struct squashfs_cache *squashfs_cache_init(char *name, int entries,
cache->entries = entries; cache->entries = entries;
cache->block_size = block_size; cache->block_size = block_size;
cache->pages = block_size >> PAGE_CACHE_SHIFT; cache->pages = block_size >> PAGE_CACHE_SHIFT;
cache->pages = cache->pages ? cache->pages : 1;
cache->name = name; cache->name = name;
cache->num_waiters = 0; cache->num_waiters = 0;
spin_lock_init(&cache->lock); spin_lock_init(&cache->lock);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册