• Boris Burkov's avatar
    btrfs: don't clear qgroup reserved bit in release_folio · a8680550
    Boris Burkov authored
    The EXTENT_QGROUP_RESERVED bit is used to "lock" regions of the file for
    duplicate reservations. That is two writes to that range in one
    transaction shouldn't create two reservations, as the reservation will
    only be freed once when the write finally goes down. Therefore, it is
    never OK to clear that bit without freeing the associated qgroup
    reserve. At this point, we don't want to be freeing the reserve, so mask
    off the bit.
    
    CC: stable@vger.kernel.org # 5.15+
    Reviewed-by: default avatarQu Wenruo <wqu@suse.com>
    Signed-off-by: default avatarBoris Burkov <boris@bur.io>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    a8680550
extent_io.c 128 KB