diff options
author | Darrick J. Wong <djwong@kernel.org> | 2022-07-14 11:06:19 -0700 |
---|---|---|
committer | Darrick J. Wong <djwong@kernel.org> | 2022-11-09 19:07:30 -0800 |
commit | 9af65cb881d41414df3f920319996c45a3fe71c4 (patch) | |
tree | 2510fc778db81853e4e57d83f272488f4ff9f773 /fs/xfs/Makefile | |
parent | 8a8891a84a5afd7099a46729d3c6ff40c6f4232d (diff) |
xfs: streamline the directory iteration code for scrub
Currently, online scrub reuses the xfs_readdir code to walk every entry
in a directory. This isn't awesome for performance, since we end up
cycling the directory ILOCK needlessly and coding around the particular
quirks of the VFS dir_context interface.
Create a streamlined version of readdir that keeps the ILOCK (since the
walk function isn't going to copy stuff to userspace), skips a whole lot
of directory walk cursor checks (since we start at 0 and walk to the
end) and has a sane way to return error codes.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs/xfs/Makefile')
-rw-r--r-- | fs/xfs/Makefile | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/Makefile b/fs/xfs/Makefile index 30e555eac02e..a762ee3cc454 100644 --- a/fs/xfs/Makefile +++ b/fs/xfs/Makefile @@ -159,6 +159,7 @@ xfs-y += $(addprefix scrub/, \ ialloc.o \ inode.o \ parent.o \ + readdir.o \ refcount.o \ rmap.o \ scrub.o \ |