From: OGAWA Hirofumi This just ignore the remaining pages. Signed-off-by: OGAWA Hirofumi Cc: Steven French Cc: Miklos Szeredi Cc: Steven Whitehouse Cc: Trond Myklebust Signed-off-by: Andrew Morton --- fs/fuse/file.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff -puN fs/fuse/file.c~fuse-readpages-cleanup fs/fuse/file.c --- a/fs/fuse/file.c~fuse-readpages-cleanup +++ a/fs/fuse/file.c @@ -397,14 +397,14 @@ static int fuse_readpages(struct file *f err = -EIO; if (is_bad_inode(inode)) - goto clean_pages_up; + goto out; data.file = file; data.inode = inode; data.req = fuse_get_req(fc); err = PTR_ERR(data.req); if (IS_ERR(data.req)) - goto clean_pages_up; + goto out; err = read_cache_pages(mapping, pages, fuse_readpages_fill, &data); if (!err) { @@ -413,10 +413,7 @@ static int fuse_readpages(struct file *f else fuse_put_request(fc, data.req); } - return err; - -clean_pages_up: - put_pages_list(pages); +out: return err; } _