Btrfs: check to see if the inode is in the log before fsyncing
authorJosef Bacik <josef@redhat.com>
Tue, 29 May 2012 20:57:49 +0000 (16:57 -0400)
committerJosef Bacik <josef@redhat.com>
Wed, 30 May 2012 14:23:42 +0000 (10:23 -0400)
commit22ee6985de7d3e81ec0cef9c6ba01b45ad1bafeb
tree96f9f1b4a4e0f0e77503fd63e6552a4a4b477e21
parent018642a1f197887058e97291460b890d296e8953
Btrfs: check to see if the inode is in the log before fsyncing

We have this check down in the actual logging code, but this is after we
start a transaction and all that good stuff.  So move the helper
inode_in_log() out so we can call it in fsync() and avoid starting a
transaction altogether and just exit if we've already fsync()'ed this file
recently.  You would notice this issue if you fsync()'ed a file over and
over again until the transaction committed.  Thanks,

Signed-off-by: Josef Bacik <josef@redhat.com>
fs/btrfs/btrfs_inode.h
fs/btrfs/file.c
fs/btrfs/tree-log.c