[v2,0/2] Fixes for ENOSPC xfs_remove

Message ID 20231129075832.73600-1-zhangjiachen.jaycee@bytedance.com
Headers
Series Fixes for ENOSPC xfs_remove |

Message

Jiachen Zhang Nov. 29, 2023, 7:58 a.m. UTC
  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(-)