• Josef Bacik's avatar
    Btrfs: fix tree log remove space corner case · bdb7d303
    Josef Bacik authored
    The tree log stuff can have allocated space that we end up having split
    across a bitmap and a real extent.  The free space code does not deal with
    this, it assumes that if it finds an extent or bitmap entry that the entire
    range must fall within the entry it finds.  This isn't necessarily the case,
    so rework the remove function so it can handle this case properly.  This
    fixed two panics the user hit, first in the case where the space was
    initially in a bitmap and then in an extent entry, and then the reverse
    case.  Thanks,
    Reported-and-tested-by: default avatarShaun Reich <sreich@kde.org>
    Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
    bdb7d303
free-space-cache.c 72.2 KB