On Tue, Aug 27, 2024 at 09:36:13AM -0700, Darrick J. Wong wrote: > > > > As the only instance of ->punch never returns an error, an such an error > > would be fatal anyway remove the entire error propagation and don't > > return an error code from iomap_file_buffered_write_punch_delalloc. > > Not sure I like this one -- if the ->iomap_begin method returns some > weird error to iomap_seek_{data,hole}, then I think we'd at least want > to complain about that? iomap_file_buffered_write_punch_delalloc never calls into iomap_seek_{data,hole} and thus ->iomap_begin. It just uses the lower level mapping_seek_hole_data that checks dirty state, and that always returns either an offset or -ENXIO, which is a special signal and not an error. > Though I guess we're punching delalloc mappings for a failed pagecache > write, so we've already got ourselves a juicy EIO to throw up to the > application so maybe it's fine not to bother with the error recovery > erroring out. Right? But that is true as well.