dout(10) << __func__ << " " << ino << " " << file_ref->fnode << dendl;
auto& fnode_extents = file_ref->fnode.extents;
+ vselector->sub_usage(file_ref->vselector_hint, file_ref->fnode);
bool rewrite = std::any_of(
fnode_extents.begin(),
}
}
}
+ vselector->add_usage(file_ref->vselector_hint, file_ref->fnode);
}
// new logging device in the current naming scheme
int new_log_dev_cur = bdev[BDEV_WAL] ?
bluefs_fnode_t old_fnode;
int r;
+ vselector->sub_usage(log_file->vselector_hint, log_file->fnode);
log_file->fnode.swap_extents(old_fnode);
if (allocate_with_fallback) {
r = _allocate(log_dev, need, &log_file->fnode);
// we will write it to super
log_file->fnode.reset_delta();
log_file->fnode.size = bl.length();
- vselector->sub_usage(log_file->vselector_hint, old_fnode);
- vselector->add_usage(log_file->vselector_hint, log_file->fnode);
log.writer = _create_writer(log_file);
log.writer->append(bl);
- uint64_t new_data = _flush_special(log.writer);
- vselector->add_usage(log_file->vselector_hint, new_data);
+ _flush_special(log.writer);
+ vselector->add_usage(log_file->vselector_hint, log_file->fnode);
#ifdef HAVE_LIBAIO
if (!cct->_conf->bluefs_sync_write) {
list<aio_t> completed_ios;