summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVasily Averin <vvs@virtuozzo.com>2019-09-13 18:17:11 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-10-05 15:12:17 +0200
commit2487800d0c02564ca6fdb77db48f0e9977b02ba7 (patch)
tree5b02bd741b37584e2e1884a49c3a9537168e9cc8
parent18df842f49c7df33b6fc926c47c7b6c5d4d226c2 (diff)
fuse: fix missing unlock_page in fuse_writepage()
commit d5880c7a8620290a6c90ced7a0e8bd0ad9419601 upstream. unlock_page() was missing in case of an already in-flight write against the same page. Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Fixes: ff17be086477 ("fuse: writepage: skip already in flight") Cc: <stable@vger.kernel.org> # v3.13 Signed-off-by: Miklos Szeredi <mszeredi@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/fuse/file.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index 5ae2828beb00..91c99724dee0 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -1767,6 +1767,7 @@ static int fuse_writepage(struct page *page, struct writeback_control *wbc)
WARN_ON(wbc->sync_mode == WB_SYNC_ALL);
redirty_page_for_writepage(wbc, page);
+ unlock_page(page);
return 0;
}