Btrfs: Fix releasepage to properly keep dirty and writeback pages
[linux-2.6-block.git] / fs / btrfs / inode.c
index 073fdd77c7848f7ec67168c8498a93a03f0d0ffb..24b7e97fccb9145a1d4d22876d9a89f23f4b8de3 100644 (file)
@@ -3060,6 +3060,8 @@ static int __btrfs_releasepage(struct page *page, gfp_t gfp_flags)
 
 static int btrfs_releasepage(struct page *page, gfp_t gfp_flags)
 {
+       if (PageWriteback(page) || PageDirty(page))
+               return 0;
        return __btrfs_releasepage(page, gfp_flags);
 }