xfs: merge filestream AG lookup into xfs_filestream_select_ag()
authorDave Chinner <dchinner@redhat.com>
Sun, 12 Feb 2023 22:14:55 +0000 (09:14 +1100)
committerDave Chinner <dchinner@redhat.com>
Sun, 12 Feb 2023 22:14:55 +0000 (09:14 +1100)
commita52dc2ad363088d0e0ab05a71f0496e2377e5cc9
tree8655664c177ac4075f41844420498f4d07c19ff4
parent8f7747ad8c52cde585b9456f6dbd1984af7b97bc
xfs: merge filestream AG lookup into xfs_filestream_select_ag()

The lookup currently either returns the cached filestream AG or it
calls xfs_filestreams_select_lengths() to looks up a new AG. This
has verify the AG that is selected, so we end up doing "select a new
AG loop in a couple of places when only one really is needed.  Merge
the initial lookup functionality with the length selection so that
we only need to do a single pick loop on lookup or verification
failure.

This undoes a lot of the factoring that enabled the selection to be
moved over to the filestreams code. It makes
xfs_filestream_select_ag() an awful messier, but it has to be made
worse before it can get better in future patches...

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
fs/xfs/xfs_filestream.c