> + if (error) > + return error; > + > lock_mode = xfs_ilock_attr_map_shared(args->dp); > + > + /* > + * Make sure the attr fork iext tree is loaded. Use the empty > + * transaction to load the bmbt so that we avoid livelocking on loops. > + */ > + if (xfs_inode_hasattr(args->dp)) { > + error = xfs_iread_extents(args->trans, args->dp, XFS_ATTR_FORK); Overly long line here. But I'd expect the xfs_iread_extents to be in xfs_attr_get_ilocked anyway instead of duplicated in the callers.