Btrfs: fix false positive in check-integrity on unmount
authorStefan Behrens <sbehrens@giantdisaster.de>
Wed, 23 May 2012 15:57:49 +0000 (17:57 +0200)
committerJosef Bacik <josef@redhat.com>
Wed, 30 May 2012 14:23:44 +0000 (10:23 -0400)
During unmount, it could happen that the integrity checker printed a
warning message "attempt to free ... on umount which is not yet iodone"
which turned out to be a false positive.

Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de>
fs/btrfs/check-integrity.c

index ed7618389327f7ad403a61f723915ab23f719fac..9cebb1fd6a3cc59919c7c990d3016caee52b5849 100644 (file)
@@ -3337,7 +3337,7 @@ void btrfsic_unmount(struct btrfs_root *root,
                                btrfsic_block_link_free(l);
                }
 
-               if (b_all->is_iodone)
+               if (b_all->is_iodone || b_all->never_written)
                        btrfsic_block_free(b_all);
                else
                        printk(KERN_INFO "btrfs: attempt to free %c-block"