[PATCH v2 0/2] Fixes for ENOSPC xfs_remove

From: Jiachen Zhang
Date: Wed Nov 29 2023 - 02:59:34 EST


Hi,

Recently, our use-case ran into 2 bugs in case doing xfs_remove when the
disk space is in-pressure, which may cause xfs shutdown and kernel crash
in the xfs log recovery procedure. Here are 2 patches to fix the
problem.

The 1st patch fixes an uninitialized variable issue.

The 2nd patch ensures the blkno in the xfs_buf is updated when doing
xfs_da3_swap_lastblock().

Compared with the V1 patchset, this V2 patchset
- directly set the *logflagsp value to make the code more robust in the
1st commit,
- check xfs's crc-feature rather than magic in the 2nd commit, and
- fixed code style and rebased onto the master branch.


Thanks,
Jiachen

Jiachen Zhang (1):
xfs: ensure logflagsp is initialized in xfs_bmap_del_extent_real

Zhang Tianci (1):
xfs: update dir3 leaf block metadata after swap

fs/xfs/libxfs/xfs_bmap.c | 26 ++++++++++++++------------
fs/xfs/libxfs/xfs_da_btree.c | 11 ++++++++++-
2 files changed, 24 insertions(+), 13 deletions(-)

--
2.20.1