• Josef Bacik's avatar
    Btrfs: unlock extent range on enospc in compressed submit · fdf8e2ea
    Josef Bacik authored
    A user reported a deadlock where the async submit thread was blocked on the
    lock_extent() lock, and then everybody behind him was locked on the page lock
    for the page he was holding.  Looking at the code I noticed we do not unlock the
    extent range when we get ENOSPC and goto retry.  This is bad because we
    immediately try to lock that range again to do the cow, which will cause a
    deadlock.  Fix this by unlocking the range.  Thanks,
    Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
    fdf8e2ea
inode.c 230 KB