@@ -570,15 +570,15 @@ static int matches_name(struct ubifs_info *c, struct ubifs_zbranch *zbr,
}
/**
- * get_znode - get a TNC znode that may not be loaded yet.
+ * ubifs_get_znode - get a TNC znode that may not be loaded yet.
* @c: UBIFS file-system description object
* @znode: parent znode
* @n: znode branch slot number
*
* This function returns the znode or a negative error code.
*/
-static struct ubifs_znode *get_znode(struct ubifs_info *c,
- struct ubifs_znode *znode, int n)
+struct ubifs_znode *ubifs_get_znode(struct ubifs_info *c,
+ struct ubifs_znode *znode, int n)
{
struct ubifs_zbranch *zbr;
@@ -618,11 +618,11 @@ static int tnc_next(struct ubifs_info *c, struct ubifs_znode **zn, int *n)
nn = znode->iip + 1;
znode = zp;
if (nn < znode->child_cnt) {
- znode = get_znode(c, znode, nn);
+ znode = ubifs_get_znode(c, znode, nn);
if (IS_ERR(znode))
return PTR_ERR(znode);
while (znode->level != 0) {
- znode = get_znode(c, znode, 0);
+ znode = ubifs_get_znode(c, znode, 0);
if (IS_ERR(znode))
return PTR_ERR(znode);
}
@@ -662,12 +662,12 @@ static int tnc_prev(struct ubifs_info *c, struct ubifs_znode **zn, int *n)
nn = znode->iip - 1;
znode = zp;
if (nn >= 0) {
- znode = get_znode(c, znode, nn);
+ znode = ubifs_get_znode(c, znode, nn);
if (IS_ERR(znode))
return PTR_ERR(znode);
while (znode->level != 0) {
nn = znode->child_cnt - 1;
- znode = get_znode(c, znode, nn);
+ znode = ubifs_get_znode(c, znode, nn);
if (IS_ERR(znode))
return PTR_ERR(znode);
}
@@ -2571,7 +2571,7 @@ static int tnc_delete(struct ubifs_info *c, struct ubifs_znode *znode, int n)
while (znode->child_cnt == 1 && znode->level != 0) {
zp = znode;
zbr = &znode->zbranch[0];
- znode = get_znode(c, znode, 0);
+ znode = ubifs_get_znode(c, znode, 0);
if (IS_ERR(znode))
return PTR_ERR(znode);
znode = dirty_cow_znode(c, zbr);
@@ -3098,12 +3098,12 @@ static struct ubifs_znode *left_znode(struct ubifs_info *c,
return NULL;
if (n >= 0) {
/* Now go down the rightmost branch to 'level' */
- znode = get_znode(c, znode, n);
+ znode = ubifs_get_znode(c, znode, n);
if (IS_ERR(znode))
return znode;
while (znode->level != level) {
n = znode->child_cnt - 1;
- znode = get_znode(c, znode, n);
+ znode = ubifs_get_znode(c, znode, n);
if (IS_ERR(znode))
return znode;
}
@@ -3135,11 +3135,11 @@ static struct ubifs_znode *right_znode(struct ubifs_info *c,
return NULL;
if (n < znode->child_cnt) {
/* Now go down the leftmost branch to 'level' */
- znode = get_znode(c, znode, n);
+ znode = ubifs_get_znode(c, znode, n);
if (IS_ERR(znode))
return znode;
while (znode->level != level) {
- znode = get_znode(c, znode, 0);
+ znode = ubifs_get_znode(c, znode, 0);
if (IS_ERR(znode))
return znode;
}
@@ -3224,13 +3224,13 @@ static struct ubifs_znode *lookup_znode(struct ubifs_info *c,
}
if (znode->level == level + 1)
break;
- znode = get_znode(c, znode, n);
+ znode = ubifs_get_znode(c, znode, n);
if (IS_ERR(znode))
return znode;
}
/* Check if the child is the one we are looking for */
if (znode->zbranch[n].lnum == lnum && znode->zbranch[n].offs == offs)
- return get_znode(c, znode, n);
+ return ubifs_get_znode(c, znode, n);
/* If the key is unique, there is nowhere else to look */
if (!is_hash_key(c, key))
return NULL;
@@ -3256,7 +3256,7 @@ static struct ubifs_znode *lookup_znode(struct ubifs_info *c,
/* Check it */
if (znode->zbranch[n].lnum == lnum &&
znode->zbranch[n].offs == offs)
- return get_znode(c, znode, n);
+ return ubifs_get_znode(c, znode, n);
/* Stop if the key is less than the one we are looking for */
if (keys_cmp(c, &znode->zbranch[n].key, key) < 0)
break;
@@ -3278,7 +3278,7 @@ static struct ubifs_znode *lookup_znode(struct ubifs_info *c,
/* Check it */
if (znode->zbranch[n].lnum == lnum &&
znode->zbranch[n].offs == offs)
- return get_znode(c, znode, n);
+ return ubifs_get_znode(c, znode, n);
/* Stop if the key is greater than the one we are looking for */
if (keys_cmp(c, &znode->zbranch[n].key, key) > 0)
break;
@@ -1820,6 +1820,8 @@ int ubifs_find_dirty_idx_leb(struct ubifs_info *c);
int ubifs_save_dirty_idx_lnums(struct ubifs_info *c);
/* tnc.c */
+struct ubifs_znode *ubifs_get_znode(struct ubifs_info *c,
+ struct ubifs_znode *znode, int n);
int ubifs_lookup_level0(struct ubifs_info *c, const union ubifs_key *key,
struct ubifs_znode **zn, int *n);
int ubifs_tnc_lookup_nm(struct ubifs_info *c, const union ubifs_key *key,
get_znode will be needed by upcoming UBIFS quota support. Rename it to ubifs_get_znode and export it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> --- fs/ubifs/tnc.c | 32 ++++++++++++++++---------------- fs/ubifs/ubifs.h | 2 ++ 2 files changed, 18 insertions(+), 16 deletions(-)