Re: [PATCH 1/3] xfs/018: remove inline xattr recovery tests

Christoph Hellwig
2026-02-06T05:59:49Z

On Thu, Feb 05, 2026 at 08:56:24AM -0800, Darrick J. Wong wrote:
> "In Linux 7.0 we've changed the extended attribute update code to try to
> take a shortcut for performance reasons. Before walking through the
> attr intent state machine (slow), the update will check to see if the
> attr structure is in short format and will stay in that format after the
> change. If so, then the incore inode can be updated and logged, and the
> update is complete (fast) in a single transaction.
>
> "(Obviously, for complex attr structures or large changes we still walk
> through the intent machinery.)
>
> "However, xfs/018 tests the behavior of the "larp" error injector, which
> only triggers from inside the attr intent state machine. Therefore, the
> short format tests don't actually trip the injector. It makes no sense
> to add a new larp injection callsite for the shortcut because either the
> single transaction gets written to disk or it doesn't."

Make sense, but from looking at the test I'm still a bit confused
why it fails (vs just not testing something too useful)

>
> > Only vaguely related, but should we ensure to always clear error
> > tags after the test runs to ensure they don't leak into other tests?
>
> They go away with _scratch_remount because error tags only live as long
> as the mount.

True. While still leaves me puzzled why generic/753 now hits attr log
recovery for me sometimes.