Commit a37b06d5 authored by Doug Chapman's avatar Doug Chapman Committed by Phillip Lougher
Browse files

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: default avatarDoug Chapman <doug.chapman@hp.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarPhillip Lougher <phillip@lougher.demon.co.uk>
parent 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% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment