Lines Matching refs:bargs
3115 struct btrfs_balance_args *bargs) in chunk_profiles_filter() argument
3120 if (bargs->profiles & chunk_type) in chunk_profiles_filter()
3127 struct btrfs_balance_args *bargs) in chunk_usage_range_filter() argument
3138 if (bargs->usage_min == 0) in chunk_usage_range_filter()
3142 bargs->usage_min); in chunk_usage_range_filter()
3144 if (bargs->usage_max == 0) in chunk_usage_range_filter()
3146 else if (bargs->usage_max > 100) in chunk_usage_range_filter()
3150 bargs->usage_max); in chunk_usage_range_filter()
3160 u64 chunk_offset, struct btrfs_balance_args *bargs) in chunk_usage_filter() argument
3169 if (bargs->usage_min == 0) in chunk_usage_filter()
3171 else if (bargs->usage > 100) in chunk_usage_filter()
3175 bargs->usage); in chunk_usage_filter()
3186 struct btrfs_balance_args *bargs) in chunk_devid_filter() argument
3194 if (btrfs_stripe_devid(leaf, stripe) == bargs->devid) in chunk_devid_filter()
3205 struct btrfs_balance_args *bargs) in chunk_drange_filter() argument
3214 if (!(bargs->flags & BTRFS_BALANCE_ARGS_DEVID)) in chunk_drange_filter()
3230 if (btrfs_stripe_devid(leaf, stripe) != bargs->devid) in chunk_drange_filter()
3237 if (stripe_offset < bargs->pend && in chunk_drange_filter()
3238 stripe_offset + stripe_length > bargs->pstart) in chunk_drange_filter()
3249 struct btrfs_balance_args *bargs) in chunk_vrange_filter() argument
3251 if (chunk_offset < bargs->vend && in chunk_vrange_filter()
3252 chunk_offset + btrfs_chunk_length(leaf, chunk) > bargs->vstart) in chunk_vrange_filter()
3261 struct btrfs_balance_args *bargs) in chunk_stripes_range_filter() argument
3265 if (bargs->stripes_min <= num_stripes in chunk_stripes_range_filter()
3266 && num_stripes <= bargs->stripes_max) in chunk_stripes_range_filter()
3273 struct btrfs_balance_args *bargs) in chunk_soft_convert_filter() argument
3275 if (!(bargs->flags & BTRFS_BALANCE_ARGS_CONVERT)) in chunk_soft_convert_filter()
3281 if (bargs->target == chunk_type) in chunk_soft_convert_filter()
3292 struct btrfs_balance_args *bargs = NULL; in should_balance_chunk() local
3302 bargs = &bctl->data; in should_balance_chunk()
3304 bargs = &bctl->sys; in should_balance_chunk()
3306 bargs = &bctl->meta; in should_balance_chunk()
3309 if ((bargs->flags & BTRFS_BALANCE_ARGS_PROFILES) && in should_balance_chunk()
3310 chunk_profiles_filter(chunk_type, bargs)) { in should_balance_chunk()
3315 if ((bargs->flags & BTRFS_BALANCE_ARGS_USAGE) && in should_balance_chunk()
3316 chunk_usage_filter(bctl->fs_info, chunk_offset, bargs)) { in should_balance_chunk()
3318 } else if ((bargs->flags & BTRFS_BALANCE_ARGS_USAGE_RANGE) && in should_balance_chunk()
3319 chunk_usage_range_filter(bctl->fs_info, chunk_offset, bargs)) { in should_balance_chunk()
3324 if ((bargs->flags & BTRFS_BALANCE_ARGS_DEVID) && in should_balance_chunk()
3325 chunk_devid_filter(leaf, chunk, bargs)) { in should_balance_chunk()
3330 if ((bargs->flags & BTRFS_BALANCE_ARGS_DRANGE) && in should_balance_chunk()
3331 chunk_drange_filter(leaf, chunk, chunk_offset, bargs)) { in should_balance_chunk()
3336 if ((bargs->flags & BTRFS_BALANCE_ARGS_VRANGE) && in should_balance_chunk()
3337 chunk_vrange_filter(leaf, chunk, chunk_offset, bargs)) { in should_balance_chunk()
3342 if ((bargs->flags & BTRFS_BALANCE_ARGS_STRIPES_RANGE) && in should_balance_chunk()
3343 chunk_stripes_range_filter(leaf, chunk, bargs)) { in should_balance_chunk()
3348 if ((bargs->flags & BTRFS_BALANCE_ARGS_SOFT) && in should_balance_chunk()
3349 chunk_soft_convert_filter(chunk_type, bargs)) { in should_balance_chunk()
3356 if ((bargs->flags & BTRFS_BALANCE_ARGS_LIMIT)) { in should_balance_chunk()
3357 if (bargs->limit == 0) in should_balance_chunk()
3360 bargs->limit--; in should_balance_chunk()
3361 } else if ((bargs->flags & BTRFS_BALANCE_ARGS_LIMIT_RANGE)) { in should_balance_chunk()
3367 if (bargs->limit_max == 0) in should_balance_chunk()
3370 bargs->limit_max--; in should_balance_chunk()
3652 struct btrfs_ioctl_balance_args *bargs) in btrfs_balance() argument
3794 if (bargs) { in btrfs_balance()
3795 memset(bargs, 0, sizeof(*bargs)); in btrfs_balance()
3796 update_ioctl_balance_args(fs_info, 0, bargs); in btrfs_balance()