From: Jianpeng Ma Date: Fri, 19 Sep 2014 03:27:57 +0000 (+0800) Subject: ReplicatedPG: For MAPEXT, using bl.length() instead of op.extent.length as num_rd_kb. X-Git-Tag: v0.91~52^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F2530%2Fhead;p=ceph.git ReplicatedPG: For MAPEXT, using bl.length() instead of op.extent.length as num_rd_kb. For fiemap, it don't real read the data(offset,length). It only fetech the infos of extents. So don't use length as num_rd_kb. Signed-off-by: Jianpeng Ma --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 9addff11125a..579535bbe661 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -3367,7 +3367,8 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector& ops) osd_op.outdata.claim(bl); if (r < 0) result = r; - ctx->delta_stats.num_rd_kb += SHIFT_ROUND_UP(op.extent.length, 10); + else + ctx->delta_stats.num_rd_kb += SHIFT_ROUND_UP(bl.length(), 10); ctx->delta_stats.num_rd++; dout(10) << " map_extents done on object " << soid << dendl; }