On Tue, Jun 10, 2025 at 07:14:57AM +0200, Christoph Hellwig wrote: > Hi all, > > I dug into a rabit hole about the log item formatting recently, > and noticed that the handling of the opheaders is still pretty > ugly because it leaks pre-delayed logging implementation > details into the log item implementations. > > The core of this series is to remove the to reserve space in the > CIL buffers/shadow buffers for the opheaders that already were > generated more or less on the fly by the lowlevel log write > code anyway, but there's lots of other cleanups around it. > > Diffstat: > libxfs/xfs_log_format.h | 54 ----- > libxfs/xfs_log_recover.h | 6 > xfs_attr_item.c | 156 +++++++------- > xfs_attr_item.h | 8 > xfs_bmap_item.c | 28 +- > xfs_buf_item.c | 27 +- > xfs_buf_item.h | 2 > xfs_buf_item_recover.c | 38 +-- > xfs_dquot_item.c | 9 > xfs_dquot_item_recover.c | 20 - > xfs_exchmaps_item.c | 19 - > xfs_extfree_item.c | 69 +++--- > xfs_icreate_item.c | 8 > xfs_inode_item.c | 55 ++--- > xfs_inode_item.h | 4 > xfs_inode_item_recover.c | 26 +- > xfs_log.c | 503 ++++++++++++++++++----------------------------- > xfs_log.h | 106 ++++----- > xfs_log_cil.c | 195 ++++++++++-------- > xfs_log_priv.h | 29 ++ > xfs_log_recover.c | 16 - > xfs_refcount_item.c | 44 +--- > xfs_rmap_item.c | 44 +--- > xfs_trans.h | 5 > 24 files changed, 668 insertions(+), 803 deletions(-) That's a pretty major rewrite of the core journal formatting and iclog writing subsystem. That's going to need a lot of careful review as well as correctness and recovery testing. It probably also needs perf regression testing, as these paths are critical for metadata performance... Do you have a git branch for this series that I can pull? -Dave. -- Dave Chinner david@xxxxxxxxxxxxx