|
@@ -3587,12 +3587,6 @@ static struct inode *btrfs_new_inode(struct btrfs_trans_handle *trans,
|
|
owner = 1;
|
|
owner = 1;
|
|
BTRFS_I(inode)->block_group =
|
|
BTRFS_I(inode)->block_group =
|
|
btrfs_find_block_group(root, 0, alloc_hint, owner);
|
|
btrfs_find_block_group(root, 0, alloc_hint, owner);
|
|
- if ((mode & S_IFREG)) {
|
|
|
|
- if (btrfs_test_opt(root, NODATASUM))
|
|
|
|
- BTRFS_I(inode)->flags |= BTRFS_INODE_NODATASUM;
|
|
|
|
- if (btrfs_test_opt(root, NODATACOW))
|
|
|
|
- BTRFS_I(inode)->flags |= BTRFS_INODE_NODATACOW;
|
|
|
|
- }
|
|
|
|
|
|
|
|
key[0].objectid = objectid;
|
|
key[0].objectid = objectid;
|
|
btrfs_set_key_type(&key[0], BTRFS_INODE_ITEM_KEY);
|
|
btrfs_set_key_type(&key[0], BTRFS_INODE_ITEM_KEY);
|
|
@@ -3647,6 +3641,13 @@ static struct inode *btrfs_new_inode(struct btrfs_trans_handle *trans,
|
|
|
|
|
|
btrfs_inherit_iflags(inode, dir);
|
|
btrfs_inherit_iflags(inode, dir);
|
|
|
|
|
|
|
|
+ if ((mode & S_IFREG)) {
|
|
|
|
+ if (btrfs_test_opt(root, NODATASUM))
|
|
|
|
+ BTRFS_I(inode)->flags |= BTRFS_INODE_NODATASUM;
|
|
|
|
+ if (btrfs_test_opt(root, NODATACOW))
|
|
|
|
+ BTRFS_I(inode)->flags |= BTRFS_INODE_NODATACOW;
|
|
|
|
+ }
|
|
|
|
+
|
|
insert_inode_hash(inode);
|
|
insert_inode_hash(inode);
|
|
inode_tree_add(inode);
|
|
inode_tree_add(inode);
|
|
return inode;
|
|
return inode;
|