• Aneesh Kumar K.V's avatar
    ext4: Fix lockdep recursive locking warning · b7be019e
    Aneesh Kumar K.V authored
    In ext4_mb_init_group(), if the filesystem block size is less than
    PAGE_SIZE/2, the code tries to grab alloc_sem for multiple block
    groups in a loop.  We need to allow for this by using
    down_write_nested() and passing in the loop index as a lock subclass
    number.  This works because no other code path needs to take multiple
    alloc_sem's.  Note that lockdep will fail for filesystem blocksize
    smaller than to PAGE_SIZE/16k.  (e.g., a 1k filesystem blocksize with
    a 32k page size, or a 2k filesystem blocksize with a 64k blocksize,
    etc.)
    Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
    Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    b7be019e
mballoc.c 132 KB