Commit 27871790 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'squashfs-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next

Pull squashfs bugfix from Phillip Lougher:
 "Just a single bug fix to the new "directly decompress into the page
  cache" code"

* tag 'squashfs-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:
  Squashfs: fix failure to unlock pages on decompress error
parents d644c026 6d565409
...@@ -84,6 +84,9 @@ int squashfs_readpage_block(struct page *target_page, u64 block, int bsize) ...@@ -84,6 +84,9 @@ int squashfs_readpage_block(struct page *target_page, u64 block, int bsize)
*/ */
res = squashfs_read_cache(target_page, block, bsize, pages, res = squashfs_read_cache(target_page, block, bsize, pages,
page); page);
if (res < 0)
goto mark_errored;
goto out; goto out;
} }
...@@ -119,7 +122,7 @@ int squashfs_readpage_block(struct page *target_page, u64 block, int bsize) ...@@ -119,7 +122,7 @@ int squashfs_readpage_block(struct page *target_page, u64 block, int bsize)
* dealt with by the caller * dealt with by the caller
*/ */
for (i = 0; i < pages; i++) { for (i = 0; i < pages; i++) {
if (page[i] == target_page) if (page[i] == NULL || page[i] == target_page)
continue; continue;
flush_dcache_page(page[i]); flush_dcache_page(page[i]);
SetPageError(page[i]); SetPageError(page[i]);
......
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