diff options
Diffstat (limited to 'fs/btrfs/inode-item.c')
-rw-r--r-- | fs/btrfs/inode-item.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/inode-item.c b/fs/btrfs/inode-item.c index baa74f3db691..a13cf1a96c73 100644 --- a/fs/btrfs/inode-item.c +++ b/fs/btrfs/inode-item.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include "ctree.h" | 19 | #include "ctree.h" |
20 | #include "disk-io.h" | 20 | #include "disk-io.h" |
21 | #include "transaction.h" | 21 | #include "transaction.h" |
22 | #include "print-tree.h" | ||
22 | 23 | ||
23 | static int find_name_in_backref(struct btrfs_path *path, const char *name, | 24 | static int find_name_in_backref(struct btrfs_path *path, const char *name, |
24 | int name_len, struct btrfs_inode_ref **ref_ret) | 25 | int name_len, struct btrfs_inode_ref **ref_ret) |
@@ -128,13 +129,14 @@ int btrfs_del_inode_ref(struct btrfs_trans_handle *trans, | |||
128 | item_start = btrfs_item_ptr_offset(leaf, path->slots[0]); | 129 | item_start = btrfs_item_ptr_offset(leaf, path->slots[0]); |
129 | memmove_extent_buffer(leaf, ptr, ptr + sub_item_len, | 130 | memmove_extent_buffer(leaf, ptr, ptr + sub_item_len, |
130 | item_size - (ptr + sub_item_len - item_start)); | 131 | item_size - (ptr + sub_item_len - item_start)); |
131 | ret = btrfs_truncate_item(trans, root, path, | 132 | btrfs_truncate_item(trans, root, path, |
132 | item_size - sub_item_len, 1); | 133 | item_size - sub_item_len, 1); |
133 | out: | 134 | out: |
134 | btrfs_free_path(path); | 135 | btrfs_free_path(path); |
135 | return ret; | 136 | return ret; |
136 | } | 137 | } |
137 | 138 | ||
139 | /* Will return 0, -ENOMEM, -EMLINK, or -EEXIST or anything from the CoW path */ | ||
138 | int btrfs_insert_inode_ref(struct btrfs_trans_handle *trans, | 140 | int btrfs_insert_inode_ref(struct btrfs_trans_handle *trans, |
139 | struct btrfs_root *root, | 141 | struct btrfs_root *root, |
140 | const char *name, int name_len, | 142 | const char *name, int name_len, |
@@ -165,7 +167,7 @@ int btrfs_insert_inode_ref(struct btrfs_trans_handle *trans, | |||
165 | goto out; | 167 | goto out; |
166 | 168 | ||
167 | old_size = btrfs_item_size_nr(path->nodes[0], path->slots[0]); | 169 | old_size = btrfs_item_size_nr(path->nodes[0], path->slots[0]); |
168 | ret = btrfs_extend_item(trans, root, path, ins_len); | 170 | btrfs_extend_item(trans, root, path, ins_len); |
169 | ref = btrfs_item_ptr(path->nodes[0], path->slots[0], | 171 | ref = btrfs_item_ptr(path->nodes[0], path->slots[0], |
170 | struct btrfs_inode_ref); | 172 | struct btrfs_inode_ref); |
171 | ref = (struct btrfs_inode_ref *)((unsigned long)ref + old_size); | 173 | ref = (struct btrfs_inode_ref *)((unsigned long)ref + old_size); |