On Tue, Dec 25, 2018 at 8:07 PM Theodore Y. Ts'o <tytso@xxxxxxx> wrote: > > On Tue, Dec 25, 2018 at 04:10:25PM -0800, Liu Bo wrote: > > > > I had a patch[1] to address the problem but with adding reservation > > only when we need to (in ext4_ext_try_to_merge_up). > > Sorry, I had forgotten that you had that patch pending. I believe > that merging up isn't the only case we need to worry about, though. > For example, if we write into the middle of a larger unwritten region, > we might havec to change a single region into three regions, which > might require a node split --- and in that case, it's not optional, as > would be in the try_to_merge_up situation. If we don't have enough > credits to do a node split our only choices would be mark the file > system as corrupted, or to fail the write with ENOSPC (which would be > very confusing to the user/application). > I see it now, thanks for the explanation. thanks, liubo > Cheers, > > - Ted