On 10/26/18 12:29 AM, Stefan Ring wrote: > On Fri, Oct 26, 2018 at 2:36 AM Eric Sandeen <sandeen@xxxxxxxxxxx> wrote: >>> Hm, I think another case we're missing is interior nodes on multi-fsb objects, >> i.e. everything under /* Zero unused part of interior nodes */ seems to be >> missing for the process_multi_fsb_objects case as well. Urk, what a mess. > > It is a classic game of whack-a-mole ;). I do understand that it is > this way for historical reasons, but if it would be redone today, it > should obviously use zeroed buffers for writing out and copy just the > bits that are known to be needed. Yeah, I was thinking about that last night. I'm not sure it'd be a whole lot easier, though - for every single type of metadata block we either need to zap the holes or copy the bits, but every boundary is the same and would need to be computed and handled regardless. I'm not sure it'd be a win. -Eric