• Andreas Gruenbacher's avatar
    gfs2: Fix fallocate chunk size · 174d1232
    Andreas Gruenbacher authored
    The chunk size of allocations in __gfs2_fallocate is calculated
    incorrectly.  The size can collapse, causing __gfs2_fallocate to
    allocate one block at a time, which is very inefficient.  This needs
    fixing in two places:
    
    In gfs2_quota_lock_check, always set ap->allowed to UINT_MAX to indicate
    that there is no quota limit.  This fixes callers that rely on
    ap->allowed to be set even when quotas are off.
    
    In __gfs2_fallocate, reset max_blks to UINT_MAX in each iteration of the
    loop to make sure that allocation limits from one resource group won't
    spill over into another resource group.
    Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
    Signed-off-by: default avatarBob Peterson <rpeterso@redhat.com>
    174d1232
file.c 29.4 KB