prt_str(out, "rebalance: target ");
if (c)
- bch2_target_to_text(out, c, r->target);
+ bch2_target_to_text(out, c, r->background_target);
else
- prt_printf(out, "%u", r->target);
+ prt_printf(out, "%u", r->background_target);
prt_str(out, " compression ");
- bch2_compression_opt_to_text(out, r->compression);
+ bch2_compression_opt_to_text(out, r->background_compression);
break;
}
default:
struct extent_ptr_decoded p;
u64 sectors = 0;
- if (opts->compression) {
- unsigned compression_type = bch2_compression_opt_to_type(opts->compression);
+ if (opts->background_compression) {
+ unsigned compression_type = bch2_compression_opt_to_type(opts->background_compression);
bkey_for_each_ptr_decode(k.k, ptrs, p, entry) {
if (p.crc.compression_type == BCH_COMPRESSION_TYPE_incompressible ||
}
}
incompressible:
- if (opts->target &&
- bch2_target_accepts_data(c, BCH_DATA_user, opts->target)) {
+ if (opts->background_target &&
+ bch2_target_accepts_data(c, BCH_DATA_user, opts->background_target)) {
bkey_for_each_ptr_decode(k.k, ptrs, p, entry)
- if (!p.ptr.cached && !bch2_dev_in_target(c, p.ptr.dev, opts->target))
+ if (!p.ptr.cached && !bch2_dev_in_target(c, p.ptr.dev, opts->background_target))
sectors += p.crc.compressed_size;
}
* they're referenced by different inodes with different
* options:
*/
- if (r->target)
- target = r->target;
- if (r->compression)
- compression = r->compression;
+ if (r->background_target)
+ target = r->background_target;
+ if (r->background_compression)
+ compression = r->background_compression;
}
- r->target = target;
- r->compression = compression;
+ r->background_target = target;
+ r->background_compression = compression;
}
needs_rebalance = bch2_bkey_ptrs_need_rebalance(c, k.s_c, target, compression);
if (needs_rebalance && !r) {
union bch_extent_entry *new = bkey_val_end(k);
- new->rebalance.type = 1U << BCH_EXTENT_ENTRY_rebalance;
- new->rebalance.compression = compression;
- new->rebalance.target = target;
- new->rebalance.unused = 0;
+ new->rebalance.type = 1U << BCH_EXTENT_ENTRY_rebalance;
+ new->rebalance.background_compression = compression;
+ new->rebalance.background_target = target;
+ new->rebalance.unused = 0;
k.k->u64s += extent_entry_u64s(new);
} else if (!needs_rebalance && r && k.k->type != KEY_TYPE_reflink_v) {
/*
memset(data_opts, 0, sizeof(*data_opts));
data_opts->rewrite_ptrs =
- bch2_bkey_ptrs_need_rebalance(c, k, r->target, r->compression);
- data_opts->target = r->target;
+ bch2_bkey_ptrs_need_rebalance(c, k, r->background_target, r->background_compression);
+ data_opts->target = r->background_target;
data_opts->write_flags |= BCH_WRITE_ONLY_SPECIFIED_DEVS;
if (!data_opts->rewrite_ptrs) {
struct printbuf buf = PRINTBUF;
prt_str(&buf, "target=");
- bch2_target_to_text(&buf, c, r->target);
+ bch2_target_to_text(&buf, c, r->background_target);
prt_str(&buf, " compression=");
- bch2_compression_opt_to_text(&buf, r->compression);
+ bch2_compression_opt_to_text(&buf, r->background_compression);
prt_str(&buf, " ");
bch2_bkey_val_to_text(&buf, c, k);
} else {
const struct bch_extent_rebalance *r = bch2_bkey_rebalance_opts(k);
- target = r ? r->target : io_opts->background_target;
- compression = r ? r->compression : io_opts->background_compression;
+ target = r ? r->background_target : io_opts->background_target;
+ compression = r ? r->background_compression : io_opts->background_compression;
}
data_opts->rewrite_ptrs = bch2_bkey_ptrs_need_rebalance(c, k, target, compression);