diff options
| author | 2013-12-09 14:04:37 +0100 | |
|---|---|---|
| committer | 2013-12-09 14:04:37 +0100 | |
| commit | bdc54ef45d7670aeb52ce73f8b7ad5f3e5563661 (patch) | |
| tree | da6e170ce87891a0242de88d8d7c1ba34faf9bb7 /fs/squashfs/file_direct.c | |
| parent | Merge branch 'mark-irqs' into devel (diff) | |
| parent | Linux 3.13-rc3 (diff) | |
| download | linux-dev-bdc54ef45d7670aeb52ce73f8b7ad5f3e5563661.tar.xz linux-dev-bdc54ef45d7670aeb52ce73f8b7ad5f3e5563661.zip | |
Merge tag 'v3.13-rc3' into devel
Linux 3.13-rc3
Diffstat (limited to 'fs/squashfs/file_direct.c')
| -rw-r--r-- | fs/squashfs/file_direct.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/squashfs/file_direct.c b/fs/squashfs/file_direct.c index 2943b2bfae48..62a0de6632e1 100644 --- a/fs/squashfs/file_direct.c +++ b/fs/squashfs/file_direct.c @@ -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, page); + if (res < 0) + goto mark_errored; + goto out; } @@ -119,7 +122,7 @@ mark_errored: * dealt with by the caller */ for (i = 0; i < pages; i++) { - if (page[i] == target_page) + if (page[i] == NULL || page[i] == target_page) continue; flush_dcache_page(page[i]); SetPageError(page[i]); |
