From: Christoph Hellwig Date: Mon, 15 Apr 2024 23:07:43 +0000 (-0700) Subject: xfs: use xfs_attr_sf_findname in xfs_attr_shortform_getvalue X-Git-Tag: v6.8.0~46 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=ef7e1fab372def780e8f51adaa083b4413784efa;p=xfsprogs-dev.git xfs: use xfs_attr_sf_findname in xfs_attr_shortform_getvalue Source kernel commit: 1fb4b0def7b5a5bf91ad62a112d8d3f6dc76585f xfs_attr_shortform_getvalue duplicates the logic in xfs_attr_sf_findname. Use the helper instead. Signed-off-by: Christoph Hellwig Reviewed-by: "Darrick J. Wong" Reviewed-by: Dave Chinner Signed-off-by: Chandan Babu R Reviewed-by: Bill O'Donnell --- diff --git a/libxfs/xfs_attr_leaf.c b/libxfs/xfs_attr_leaf.c index 8f1678d29..9b6dcff34 100644 --- a/libxfs/xfs_attr_leaf.c +++ b/libxfs/xfs_attr_leaf.c @@ -845,23 +845,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. */