On Thu, Mar 07, 2019 at 02:49:14PM +0300, Artem Blagodarenko wrote: > Regular allocator make four groups processing loops to > find good group to allocate blocks. On 4th loop it accept any > group, even if there is no free space at all. > > This patch adds group free space check to skip full groups. > > Sigend-off-by: Artem Blagodarenko <c17828@xxxxxxxx> This patch doesn't change anything. Note the check that we have at the very beginning of ext4_mb_good_group(): free = grp->bb_free; if (free == 0) return 0; This is before we even go into the case statement, so your change: > case 3: > - return 1; > + /* Skip group without any free space */ > + return free ? 1 : 0; is a no-op; we will always be returning 1, since if free == 0, we would have bailed out at the top of the function. Cheers, - Ted