On Wed, Jun 24, 2026 at 12:46:01AM -0700, Christoph Hellwig wrote: > On Mon, Jun 22, 2026 at 07:04:38AM +0000, Jan Prusakowski wrote: > > On F2FS, generic/064 fails with "extents mismatched before = 1 after = > > 50" following multiple fcollapse (collapse range) operations. > > > > To ensure crash consistency and checkpoint integrity, F2FS forbids > > in-place SSR (Summary Standalone Replacement) overwrites on valid > > checkpointed blocks. When collapse range shifts blocks, F2FS allocates > > new data pages in LFS mode (out-of-place log writes). As a result, > > sequential collapse range calls rewrite shifted blocks at new log > > locations, intentionally leaving the file with 50 extents. > > This sounds odd. The test allocates a contigous range and then just does > insert/collapse on it, which should not lead to any new data block > allocations. Given that the test works fine on zoned XFS and btrfs > with strict out of place write policies we know it does not require > overwriting blocks to work as well. > > So I think something is fishy in f2fs if needs to allocate data blocks > here.
I have the same question with Christoph. Shouldn't fcollapse in F2FS just remap the metadata instead of allocating new data blocks? > _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
