aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/btrfs/ioctl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 033726aed96e..b8b30e11a226 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1278,7 +1278,8 @@ again:
* we unlocked the page above, so we need check if
* it was released or not.
*/
- if (page->mapping != inode->i_mapping) {
+ if (page->mapping != inode->i_mapping ||
+ !PagePrivate(page)) {
unlock_page(page);
put_page(page);
goto again;
@@ -1296,7 +1297,7 @@ again:
}
}
- if (page->mapping != inode->i_mapping) {
+ if (page->mapping != inode->i_mapping || !PagePrivate(page)) {
unlock_page(page);
put_page(page);
goto again;