Lines Matching refs:path
76 struct btrfs_path *path, in btrfs_lookup_inode_extref() argument
88 ret = btrfs_search_slot(trans, root, &key, path, ins_len, cow); in btrfs_lookup_inode_extref()
93 return btrfs_find_name_in_ext_backref(path->nodes[0], path->slots[0], in btrfs_lookup_inode_extref()
104 struct btrfs_path *path; in btrfs_del_inode_extref() local
118 path = btrfs_alloc_path(); in btrfs_del_inode_extref()
119 if (!path) in btrfs_del_inode_extref()
122 path->leave_spinning = 1; in btrfs_del_inode_extref()
124 ret = btrfs_search_slot(trans, root, &key, path, -1, 1); in btrfs_del_inode_extref()
135 extref = btrfs_find_name_in_ext_backref(path->nodes[0], path->slots[0], in btrfs_del_inode_extref()
143 leaf = path->nodes[0]; in btrfs_del_inode_extref()
144 item_size = btrfs_item_size_nr(leaf, path->slots[0]); in btrfs_del_inode_extref()
153 ret = btrfs_del_item(trans, root, path); in btrfs_del_inode_extref()
158 item_start = btrfs_item_ptr_offset(leaf, path->slots[0]); in btrfs_del_inode_extref()
163 btrfs_truncate_item(path, item_size - del_len, 1); in btrfs_del_inode_extref()
166 btrfs_free_path(path); in btrfs_del_inode_extref()
176 struct btrfs_path *path; in btrfs_del_inode_ref() local
192 path = btrfs_alloc_path(); in btrfs_del_inode_ref()
193 if (!path) in btrfs_del_inode_ref()
196 path->leave_spinning = 1; in btrfs_del_inode_ref()
198 ret = btrfs_search_slot(trans, root, &key, path, -1, 1); in btrfs_del_inode_ref()
207 ref = btrfs_find_name_in_backref(path->nodes[0], path->slots[0], name, in btrfs_del_inode_ref()
214 leaf = path->nodes[0]; in btrfs_del_inode_ref()
215 item_size = btrfs_item_size_nr(leaf, path->slots[0]); in btrfs_del_inode_ref()
221 ret = btrfs_del_item(trans, root, path); in btrfs_del_inode_ref()
226 item_start = btrfs_item_ptr_offset(leaf, path->slots[0]); in btrfs_del_inode_ref()
229 btrfs_truncate_item(path, item_size - sub_item_len, 1); in btrfs_del_inode_ref()
231 btrfs_free_path(path); in btrfs_del_inode_ref()
260 struct btrfs_path *path; in btrfs_insert_inode_extref() local
269 path = btrfs_alloc_path(); in btrfs_insert_inode_extref()
270 if (!path) in btrfs_insert_inode_extref()
273 path->leave_spinning = 1; in btrfs_insert_inode_extref()
274 ret = btrfs_insert_empty_item(trans, root, path, &key, in btrfs_insert_inode_extref()
277 if (btrfs_find_name_in_ext_backref(path->nodes[0], in btrfs_insert_inode_extref()
278 path->slots[0], in btrfs_insert_inode_extref()
283 btrfs_extend_item(path, ins_len); in btrfs_insert_inode_extref()
289 leaf = path->nodes[0]; in btrfs_insert_inode_extref()
290 item = btrfs_item_nr(path->slots[0]); in btrfs_insert_inode_extref()
291 ptr = (unsigned long)btrfs_item_ptr(leaf, path->slots[0], char); in btrfs_insert_inode_extref()
295 btrfs_set_inode_extref_name_len(path->nodes[0], extref, name_len); in btrfs_insert_inode_extref()
296 btrfs_set_inode_extref_index(path->nodes[0], extref, index); in btrfs_insert_inode_extref()
297 btrfs_set_inode_extref_parent(path->nodes[0], extref, ref_objectid); in btrfs_insert_inode_extref()
300 write_extent_buffer(path->nodes[0], name, ptr, name_len); in btrfs_insert_inode_extref()
301 btrfs_mark_buffer_dirty(path->nodes[0]); in btrfs_insert_inode_extref()
304 btrfs_free_path(path); in btrfs_insert_inode_extref()
315 struct btrfs_path *path; in btrfs_insert_inode_ref() local
326 path = btrfs_alloc_path(); in btrfs_insert_inode_ref()
327 if (!path) in btrfs_insert_inode_ref()
330 path->leave_spinning = 1; in btrfs_insert_inode_ref()
331 path->skip_release_on_error = 1; in btrfs_insert_inode_ref()
332 ret = btrfs_insert_empty_item(trans, root, path, &key, in btrfs_insert_inode_ref()
336 ref = btrfs_find_name_in_backref(path->nodes[0], path->slots[0], in btrfs_insert_inode_ref()
341 old_size = btrfs_item_size_nr(path->nodes[0], path->slots[0]); in btrfs_insert_inode_ref()
342 btrfs_extend_item(path, ins_len); in btrfs_insert_inode_ref()
343 ref = btrfs_item_ptr(path->nodes[0], path->slots[0], in btrfs_insert_inode_ref()
346 btrfs_set_inode_ref_name_len(path->nodes[0], ref, name_len); in btrfs_insert_inode_ref()
347 btrfs_set_inode_ref_index(path->nodes[0], ref, index); in btrfs_insert_inode_ref()
352 if (btrfs_find_name_in_backref(path->nodes[0], in btrfs_insert_inode_ref()
353 path->slots[0], in btrfs_insert_inode_ref()
361 ref = btrfs_item_ptr(path->nodes[0], path->slots[0], in btrfs_insert_inode_ref()
363 btrfs_set_inode_ref_name_len(path->nodes[0], ref, name_len); in btrfs_insert_inode_ref()
364 btrfs_set_inode_ref_index(path->nodes[0], ref, index); in btrfs_insert_inode_ref()
367 write_extent_buffer(path->nodes[0], name, ptr, name_len); in btrfs_insert_inode_ref()
368 btrfs_mark_buffer_dirty(path->nodes[0]); in btrfs_insert_inode_ref()
371 btrfs_free_path(path); in btrfs_insert_inode_ref()
390 struct btrfs_path *path, u64 objectid) in btrfs_insert_empty_inode() argument
398 ret = btrfs_insert_empty_item(trans, root, path, &key, in btrfs_insert_empty_inode()
404 *root, struct btrfs_path *path, in btrfs_lookup_inode() argument
414 ret = btrfs_search_slot(trans, root, location, path, ins_len, cow); in btrfs_lookup_inode()
416 location->offset == (u64)-1 && path->slots[0] != 0) { in btrfs_lookup_inode()
417 slot = path->slots[0] - 1; in btrfs_lookup_inode()
418 leaf = path->nodes[0]; in btrfs_lookup_inode()
422 path->slots[0]--; in btrfs_lookup_inode()