• Daeho Jeong's avatar
    ext4: fix xfstest generic/269 double revoked buffer bug with bigalloc · 9c02ac97
    Daeho Jeong authored
    When you repeatly execute xfstest generic/269 with bigalloc_1k option
    enabled using the below command:
    
    "./kvm-xfstests -c bigalloc_1k -m nodelalloc -C 1000 generic/269"
    
    you can easily see the below bug message.
    
    "JBD2 unexpected failure: jbd2_journal_revoke: !buffer_revoked(bh);"
    
    This means that an already revoked buffer is erroneously revoked again
    and it is caused by doing revoke for the buffer at the wrong position
    in ext4_free_blocks(). We need to re-position the buffer revoke
    procedure for an unspecified buffer after checking the cluster boundary
    for bigalloc option. If not, some part of the cluster can be doubly
    revoked.
    Signed-off-by: default avatarDaeho Jeong <daeho.jeong@samsung.com>
    9c02ac97
mballoc.c 144 KB