btrfs: fix race between marking inode needs to be logged and log syncing
[sfrench/cifs-2.6.git] / fs / btrfs / transaction.h
index 6335716e513ff81743274ca7df78c07951667135..dd7c3eea08ad8f6fc2c13250289098c2491aaaaf 100644 (file)
@@ -175,7 +175,7 @@ static inline void btrfs_set_inode_last_trans(struct btrfs_trans_handle *trans,
        spin_lock(&inode->lock);
        inode->last_trans = trans->transaction->transid;
        inode->last_sub_trans = inode->root->log_transid;
-       inode->last_log_commit = inode->root->last_log_commit;
+       inode->last_log_commit = inode->last_sub_trans - 1;
        spin_unlock(&inode->lock);
 }