When we are not with inode_cache option, we won't reuse inode id, which means all of inodes will own different inode id, thus we don't worry about "reuse of inode id leads to log tree's corruption" thing.
Signed-off-by: Liu Bo <bo.li....@oracle.com> --- fs/btrfs/inode.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 95542a1..8f41ffd 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -4717,7 +4717,9 @@ static struct inode *btrfs_new_inode(struct btrfs_trans_handle *trans, * sync since it will be a full sync anyway and this will blow away the * old info in the log. */ - set_bit(BTRFS_INODE_NEEDS_FULL_SYNC, &BTRFS_I(inode)->runtime_flags); + if (btrfs_test_opt(root, INODE_MAP_CACHE)) + set_bit(BTRFS_INODE_NEEDS_FULL_SYNC, + &BTRFS_I(inode)->runtime_flags); if (S_ISDIR(mode)) owner = 0; -- 1.7.7.6 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html