diff options
| author | Takashi Iwai <tiwai@suse.de> | 2013-12-16 15:53:52 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2013-12-16 15:53:52 +0100 |
| commit | d09476018bee39495d6ece7a2e069de29a9c0ed5 (patch) | |
| tree | 866fff4323f94681e6b423f269f0549df0a34066 /fs/squashfs/file_direct.c | |
| parent | 337bb336b95bd7884fa3a194eafbdf52a0216b2e (diff) | |
| parent | afdcd431cebe3498db9aa963c780fdd5099917ec (diff) | |
Merge branch 'for-linus' into for-next
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]); |
