mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 08:02:27 +02:00
xfs: remove xfs_attr_shortform_lookup
xfs_attr_shortform_lookup is only used by xfs_attr_shortform_addname, which is much better served by calling xfs_attr_sf_findname. Switch it over and remove xfs_attr_shortform_lookup. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: "Darrick J. Wong" <djwong@kernel.org> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Chandan Babu R <chandanbabu@kernel.org>
This commit is contained in:
parent
6c8d169bbd
commit
22b7b1f597
|
|
@ -1066,19 +1066,14 @@ xfs_attr_shortform_addname(
|
|||
struct xfs_da_args *args)
|
||||
{
|
||||
int newsize, forkoff;
|
||||
int error;
|
||||
|
||||
trace_xfs_attr_sf_addname(args);
|
||||
|
||||
error = xfs_attr_shortform_lookup(args);
|
||||
switch (error) {
|
||||
case -ENOATTR:
|
||||
if (args->op_flags & XFS_DA_OP_REPLACE)
|
||||
return error;
|
||||
break;
|
||||
case -EEXIST:
|
||||
if (xfs_attr_sf_findname(args)) {
|
||||
int error;
|
||||
|
||||
if (!(args->op_flags & XFS_DA_OP_REPLACE))
|
||||
return error;
|
||||
return -EEXIST;
|
||||
|
||||
error = xfs_attr_sf_removename(args);
|
||||
if (error)
|
||||
|
|
@ -1091,11 +1086,9 @@ xfs_attr_shortform_addname(
|
|||
* around.
|
||||
*/
|
||||
args->op_flags &= ~XFS_DA_OP_REPLACE;
|
||||
break;
|
||||
case 0:
|
||||
break;
|
||||
default:
|
||||
return error;
|
||||
} else {
|
||||
if (args->op_flags & XFS_DA_OP_REPLACE)
|
||||
return -ENOATTR;
|
||||
}
|
||||
|
||||
if (args->namelen >= XFS_ATTR_SF_ENTSIZE_MAX ||
|
||||
|
|
|
|||
|
|
@ -837,30 +837,6 @@ xfs_attr_sf_removename(
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Look up a name in a shortform attribute list structure.
|
||||
*/
|
||||
/*ARGSUSED*/
|
||||
int
|
||||
xfs_attr_shortform_lookup(
|
||||
struct xfs_da_args *args)
|
||||
{
|
||||
struct xfs_ifork *ifp = &args->dp->i_af;
|
||||
struct xfs_attr_shortform *sf = ifp->if_data;
|
||||
struct xfs_attr_sf_entry *sfe;
|
||||
int i;
|
||||
|
||||
ASSERT(ifp->if_format == XFS_DINODE_FMT_LOCAL);
|
||||
sfe = &sf->list[0];
|
||||
for (i = 0; i < sf->hdr.count;
|
||||
sfe = xfs_attr_sf_nextentry(sfe), i++) {
|
||||
if (xfs_attr_match(args, sfe->namelen, sfe->nameval,
|
||||
sfe->flags))
|
||||
return -EEXIST;
|
||||
}
|
||||
return -ENOATTR;
|
||||
}
|
||||
|
||||
/*
|
||||
* Retrieve the attribute value and length.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ struct xfs_attr3_icleaf_hdr {
|
|||
*/
|
||||
void xfs_attr_shortform_create(struct xfs_da_args *args);
|
||||
void xfs_attr_shortform_add(struct xfs_da_args *args, int forkoff);
|
||||
int xfs_attr_shortform_lookup(struct xfs_da_args *args);
|
||||
int xfs_attr_shortform_getvalue(struct xfs_da_args *args);
|
||||
int xfs_attr_shortform_to_leaf(struct xfs_da_args *args);
|
||||
int xfs_attr_sf_removename(struct xfs_da_args *args);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user