xfs: use xfs_attr_sf_findname in xfs_attr_shortform_getvalue
xfs_attr_shortform_getvalue duplicates the logic in xfs_attr_sf_findname. Use the helper instead. 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
22b7b1f597
commit
1fb4b0def7
@ -848,23 +848,17 @@ int
|
||||
xfs_attr_shortform_getvalue(
|
||||
struct xfs_da_args *args)
|
||||
{
|
||||
struct xfs_attr_shortform *sf = args->dp->i_af.if_data;
|
||||
struct xfs_attr_sf_entry *sfe;
|
||||
int i;
|
||||
|
||||
ASSERT(args->dp->i_af.if_format == XFS_DINODE_FMT_LOCAL);
|
||||
|
||||
trace_xfs_attr_sf_lookup(args);
|
||||
|
||||
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 xfs_attr_copy_value(args,
|
||||
&sfe->nameval[args->namelen], sfe->valuelen);
|
||||
}
|
||||
return -ENOATTR;
|
||||
sfe = xfs_attr_sf_findname(args);
|
||||
if (!sfe)
|
||||
return -ENOATTR;
|
||||
return xfs_attr_copy_value(args, &sfe->nameval[args->namelen],
|
||||
sfe->valuelen);
|
||||
}
|
||||
|
||||
/* Convert from using the shortform to the leaf format. */
|
||||
|
Loading…
Reference in New Issue
Block a user