@@ -2068,9 +2068,9 @@ static int delete_dir_index(struct btrfs_root *root,
(unsigned long long)root->objectid);
btrfs_init_path(&path);
- di = btrfs_lookup_dir_index(trans, root, &path, backref->dir,
- backref->name, backref->namelen,
- backref->index, -1);
+ di = btrfs_lookup_dir_index_item(trans, root, &path, backref->dir,
+ backref->index, backref->name,
+ backref->namelen, -1);
if (IS_ERR(di)) {
ret = PTR_ERR(di);
btrfs_release_path(&path);
@@ -2760,11 +2760,11 @@ struct btrfs_dir_item *btrfs_lookup_dir_item(struct btrfs_trans_handle *trans,
struct btrfs_path *path, u64 dir,
const char *name, int name_len,
int mod);
-struct btrfs_dir_item *btrfs_lookup_dir_index(struct btrfs_trans_handle *trans,
- struct btrfs_root *root,
- struct btrfs_path *path, u64 dir,
- const char *name, int name_len,
- u64 index, int mod);
+struct btrfs_dir_item * btrfs_lookup_dir_index_item(struct btrfs_trans_handle *trans,
+ struct btrfs_root *root,
+ struct btrfs_path *path, u64 dir,
+ u64 objectid, const char *name, int name_len,
+ int mod);
int btrfs_delete_one_dir_name(struct btrfs_trans_handle *trans,
struct btrfs_root *root,
struct btrfs_path *path,
@@ -225,11 +225,11 @@ struct btrfs_dir_item *btrfs_lookup_dir_item(struct btrfs_trans_handle *trans,
return btrfs_match_dir_item_name(root, path, name, name_len);
}
-struct btrfs_dir_item *btrfs_lookup_dir_index(struct btrfs_trans_handle *trans,
- struct btrfs_root *root,
- struct btrfs_path *path, u64 dir,
- const char *name, int name_len,
- u64 index, int mod)
+struct btrfs_dir_item *btrfs_lookup_dir_index_item(struct btrfs_trans_handle *trans,
+ struct btrfs_root *root,
+ struct btrfs_path *path, u64 dir,
+ u64 objectid, const char *name, int name_len,
+ int mod)
{
int ret;
struct btrfs_key key;
@@ -238,7 +238,7 @@ struct btrfs_dir_item *btrfs_lookup_dir_index(struct btrfs_trans_handle *trans,
key.objectid = dir;
key.type = BTRFS_DIR_INDEX_KEY;
- key.offset = index;
+ key.offset = objectid;
ret = btrfs_search_slot(trans, root, &key, path, ins_len, cow);
if (ret < 0)
@@ -136,8 +136,8 @@ int check_dir_conflict(struct btrfs_root *root, char *name, int namelen,
btrfs_release_path(path);
/* Index conflicting? */
- dir_item = btrfs_lookup_dir_index(NULL, root, path, dir, name,
- namelen, index, 0);
+ dir_item = btrfs_lookup_dir_index_item(NULL, root, path, dir, index,
+ name, namelen, 0);
if (IS_ERR(dir_item) && PTR_ERR(dir_item) == -ENOENT)
dir_item = NULL;
if (IS_ERR(dir_item)) {
@@ -311,8 +311,8 @@ int btrfs_unlink(struct btrfs_trans_handle *trans, struct btrfs_root *root,
del_dir_item = 1;
btrfs_release_path(path);
- dir_item = btrfs_lookup_dir_index(NULL, root, path, parent_ino,
- name, namelen, index, 0);
+ dir_item = btrfs_lookup_dir_index_item(NULL, root, path, parent_ino,
+ index, name, namelen, 0);
/*
* Since lookup_dir_index() will return -ENOENT when not found,
* we need to do extra check.
@@ -369,9 +369,9 @@ int btrfs_unlink(struct btrfs_trans_handle *trans, struct btrfs_root *root,
}
if (del_dir_index) {
- dir_item = btrfs_lookup_dir_index(trans, root, path,
- parent_ino, name, namelen,
- index, -1);
+ dir_item = btrfs_lookup_dir_index_item(trans, root, path,
+ parent_ino, index, name,
+ namelen, -1);
if (IS_ERR(dir_item)) {
ret = PTR_ERR(dir_item);
goto out;