• Naohiro Aota's avatar
    btrfs: zoned: implement active zone tracking · afba2bc0
    Naohiro Aota authored
    Add zone_is_active flag to btrfs_block_group. This flag indicates the
    underlying zones are all active. Such zone active block groups are tracked
    by fs_info->active_bg_list.
    
    btrfs_dev_{set,clear}_active_zone() take responsibility for the underlying
    device part. They set/clear the bitmap to indicate zone activeness and
    count the number of zones we can activate left.
    
    btrfs_zone_{activate,finish}() take responsibility for the logical part and
    the list management. In addition, btrfs_zone_finish() wait for any writes
    on it and send REQ_OP_ZONE_FINISH to the zone.
    Signed-off-by: default avatarNaohiro Aota <naohiro.aota@wdc.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    afba2bc0
block-group.c 116 KB