Hi Dave, Please pull this branch with changes for xfs. As usual, I did a test-merge with the main upstream branch as of a few minutes ago, and didn't see any conflicts. Please let me know if you encounter any problems. --D The following changes since commit 1c1646afc96783702f92356846d6e47e0bbd6b11: xfs: check for reverse mapping records that could be merged (2023-04-11 19:00:28 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/scrub-fix-xattr-memory-mgmt-6.4_2023-04-11 for you to fetch changes up to 44af6c7e59b12d740809cf25a60c9f90f03e6d20: xfs: don't load local xattr values during scrub (2023-04-11 19:00:35 -0700) ---------------------------------------------------------------- xfs: clean up memory management in xattr scrub [v24.5] Currently, the extended attribute scrubber uses a single VLA to store all the context information needed in various parts of the scrubber code. This includes xattr leaf block space usage bitmaps, and the value buffer used to check the correctness of remote xattr value block headers. We try to minimize the insanity through the use of helper functions, but this is a memory management nightmare. Clean this up by making the bitmap and value pointers explicit members of struct xchk_xattr_buf. Second, strengthen the xattr checking by teaching it to look for overlapping data structures in the shortform attr data. Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> ---------------------------------------------------------------- Darrick J. Wong (12): xfs: xattr scrub should ensure one namespace bit per name xfs: don't shadow @leaf in xchk_xattr_block xfs: remove unnecessary dstmap in xattr scrubber xfs: split freemap from xchk_xattr_buf.buf xfs: split usedmap from xchk_xattr_buf.buf xfs: split valuebuf from xchk_xattr_buf.buf xfs: remove flags argument from xchk_setup_xattr_buf xfs: move xattr scrub buffer allocation to top level function xfs: check used space of shortform xattr structures xfs: clean up xattr scrub initialization xfs: only allocate free space bitmap for xattr scrub if needed xfs: don't load local xattr values during scrub fs/xfs/scrub/attr.c | 306 ++++++++++++++++++++++++++++++++++++--------------- fs/xfs/scrub/attr.h | 60 ++-------- fs/xfs/scrub/scrub.c | 3 + fs/xfs/scrub/scrub.h | 10 ++ 4 files changed, 239 insertions(+), 140 deletions(-)