mirror of
https://github.com/ceph/ceph
synced 2025-02-23 11:07:35 +00:00
osd: avoid unneeded ref-counting in PrimaryLogPG::log_op_stats.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
This commit is contained in:
parent
6f4ec6abcf
commit
bb20018e7e
@ -3981,7 +3981,7 @@ void PrimaryLogPG::execute_ctx(OpContext *ctx)
|
||||
ctx->register_on_commit(
|
||||
[m, ctx, this](){
|
||||
if (ctx->op)
|
||||
log_op_stats(ctx->op, ctx->bytes_written, ctx->bytes_read);
|
||||
log_op_stats(*ctx->op, ctx->bytes_written, ctx->bytes_read);
|
||||
|
||||
if (m && !ctx->sent_reply) {
|
||||
MOSDOpReply *reply = ctx->reply;
|
||||
@ -4047,15 +4047,15 @@ void PrimaryLogPG::reply_ctx(OpContext *ctx, int r, eversion_t v, version_t uv)
|
||||
close_op_ctx(ctx);
|
||||
}
|
||||
|
||||
void PrimaryLogPG::log_op_stats(const OpRequestRef op,
|
||||
void PrimaryLogPG::log_op_stats(const OpRequest& op,
|
||||
const uint64_t inb,
|
||||
const uint64_t outb)
|
||||
{
|
||||
const MOSDOp* const m = static_cast<const MOSDOp*>(op->get_req());
|
||||
const MOSDOp* const m = static_cast<const MOSDOp*>(op.get_req());
|
||||
const utime_t now = ceph_clock_now();
|
||||
|
||||
const utime_t latency = now - m->get_recv_stamp();
|
||||
const utime_t process_latency = now - op->get_dequeued_time();
|
||||
const utime_t process_latency = now - op.get_dequeued_time();
|
||||
|
||||
osd->logger->inc(l_osd_op);
|
||||
|
||||
@ -4064,7 +4064,7 @@ void PrimaryLogPG::log_op_stats(const OpRequestRef op,
|
||||
osd->logger->tinc(l_osd_op_lat, latency);
|
||||
osd->logger->tinc(l_osd_op_process_lat, process_latency);
|
||||
|
||||
if (op->may_read() && op->may_write()) {
|
||||
if (op.may_read() && op.may_write()) {
|
||||
osd->logger->inc(l_osd_op_rw);
|
||||
osd->logger->inc(l_osd_op_rw_inb, inb);
|
||||
osd->logger->inc(l_osd_op_rw_outb, outb);
|
||||
@ -4072,13 +4072,13 @@ void PrimaryLogPG::log_op_stats(const OpRequestRef op,
|
||||
osd->logger->hinc(l_osd_op_rw_lat_inb_hist, latency.to_nsec(), inb);
|
||||
osd->logger->hinc(l_osd_op_rw_lat_outb_hist, latency.to_nsec(), outb);
|
||||
osd->logger->tinc(l_osd_op_rw_process_lat, process_latency);
|
||||
} else if (op->may_read()) {
|
||||
} else if (op.may_read()) {
|
||||
osd->logger->inc(l_osd_op_r);
|
||||
osd->logger->inc(l_osd_op_r_outb, outb);
|
||||
osd->logger->tinc(l_osd_op_r_lat, latency);
|
||||
osd->logger->hinc(l_osd_op_r_lat_outb_hist, latency.to_nsec(), outb);
|
||||
osd->logger->tinc(l_osd_op_r_process_lat, process_latency);
|
||||
} else if (op->may_write() || op->may_cache()) {
|
||||
} else if (op.may_write() || op.may_cache()) {
|
||||
osd->logger->inc(l_osd_op_w);
|
||||
osd->logger->inc(l_osd_op_w_inb, inb);
|
||||
osd->logger->tinc(l_osd_op_w_lat, latency);
|
||||
@ -8481,7 +8481,7 @@ void PrimaryLogPG::complete_read_ctx(int result, OpContext *ctx)
|
||||
|
||||
if (result >= 0) {
|
||||
if (!ctx->ignore_log_op_stats) {
|
||||
log_op_stats(ctx->op, ctx->bytes_written, ctx->bytes_read);
|
||||
log_op_stats(*ctx->op, ctx->bytes_written, ctx->bytes_read);
|
||||
|
||||
publish_stats_to_osd();
|
||||
}
|
||||
|
@ -1121,7 +1121,7 @@ protected:
|
||||
void reply_ctx(OpContext *ctx, int err);
|
||||
void reply_ctx(OpContext *ctx, int err, eversion_t v, version_t uv);
|
||||
void make_writeable(OpContext *ctx);
|
||||
void log_op_stats(const OpRequestRef op, uint64_t inb, uint64_t outb);
|
||||
void log_op_stats(const OpRequest& op, uint64_t inb, uint64_t outb);
|
||||
|
||||
void write_update_size_and_usage(object_stat_sum_t& stats, object_info_t& oi,
|
||||
interval_set<uint64_t>& modified, uint64_t offset,
|
||||
|
Loading…
Reference in New Issue
Block a user