• Josef Bacik's avatar
    btrfs: add btrfs_reserve_data_bytes and use it · 8698fc4e
    Josef Bacik authored
    Create a new function btrfs_reserve_data_bytes() in order to handle data
    reservations.  This uses the new flush types and flush states to handle
    making data reservations.
    
    This patch specifically does not change any functionality, and is
    purposefully not cleaned up in order to make bisection easier for the
    future patches.  The new helper is identical to the old helper in how it
    handles data reservations.  We first try to force a chunk allocation,
    and then we run through the flush states all at once and in the same
    order that they were done with the old helper.
    
    Subsequent patches will clean this up and change the behavior of the
    flushing, and it is important to keep those changes separate so we can
    easily bisect down to the patch that caused the regression, rather than
    the patch that made us start using the new infrastructure.
    Reviewed-by: default avatarNikolay Borisov <nborisov@suse.com>
    Tested-by: default avatarNikolay Borisov <nborisov@suse.com>
    Reviewed-by: default avatarJohannes Thumshirn <johannes.thumshirn@wdc.com>
    Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    8698fc4e
delalloc-space.c 16.6 KB