Btrfs: fix warning of bytes_may_use
authorLiu Bo <bo.li.liu@oracle.com>
Wed, 17 Jun 2015 08:59:58 +0000 (16:59 +0800)
committerChris Mason <clm@fb.com>
Thu, 2 Jul 2015 00:17:21 +0000 (17:17 -0700)
commitddba1bfc2369cd0566bcfdab47599834a32d1c19
tree81924f0b14728137202db0732582cfa5f05d6703
parentad9ee2053f3f2babebc09ebc4970daa66c56c7ee
Btrfs: fix warning of bytes_may_use

While running generic/019, dmesg got several warnings from
btrfs_free_reserved_data_space().

Test generic/019 produces some disk failures so sumbit dio will get errors,
in which case, btrfs_direct_IO() goes to the error handling and free
bytes_may_use, but the problem is that bytes_may_use has been free'd
during get_block().

This adds a runtime flag to show if we've gone through get_block(), if so,
don't do the cleanup work.

Signed-off-by: Liu Bo <bo.li.liu@oracle.com>
Reviewed-by: Filipe Manana <fdmanana@suse.com>
Tested-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: Chris Mason <clm@fb.com>
fs/btrfs/btrfs_inode.h
fs/btrfs/inode.c