mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-22 06:10:06 +00:00
btrfs-progs: make btrfs_lookup_dir_index in parity with kernel code
This function exists in kernel side but using the _item suffix, and objectid argument is placed before the name argument. Change the function to reflect the kernel version. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
e05111d11e
commit
c655b5e4b1
@ -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);
|
||||
|
@ -2759,11 +2759,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;
|
||||
|
Loading…
Reference in New Issue
Block a user