diff options
| -rw-r--r-- | fs/fuse/file.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index 29bda0564e69..9ca68edcbdbe 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
| @@ -536,6 +536,7 @@ static void fuse_readpages_end(struct fuse_conn *fc, struct fuse_req *req) | |||
| 536 | else | 536 | else |
| 537 | SetPageError(page); | 537 | SetPageError(page); |
| 538 | unlock_page(page); | 538 | unlock_page(page); |
| 539 | page_cache_release(page); | ||
| 539 | } | 540 | } |
| 540 | if (req->ff) | 541 | if (req->ff) |
| 541 | fuse_file_put(req->ff); | 542 | fuse_file_put(req->ff); |
| @@ -589,6 +590,7 @@ static int fuse_readpages_fill(void *_data, struct page *page) | |||
| 589 | return PTR_ERR(req); | 590 | return PTR_ERR(req); |
| 590 | } | 591 | } |
| 591 | } | 592 | } |
| 593 | page_cache_get(page); | ||
| 592 | req->pages[req->num_pages] = page; | 594 | req->pages[req->num_pages] = page; |
| 593 | req->num_pages++; | 595 | req->num_pages++; |
| 594 | return 0; | 596 | return 0; |
