]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/PrimaryLogPG: add condition "is_chunky_scrub_active" to check object in chunky_scrub.
authorJianpeng Ma <jianpeng.ma@intel.com>
Tue, 24 Oct 2017 14:07:18 +0000 (22:07 +0800)
committerDavid Zafman <dzafman@redhat.com>
Fri, 18 May 2018 16:37:55 +0000 (09:37 -0700)
Avoid every time call scrubber.write_block_by_scrub. Most time scrubber
is inactive. And compare to write_block_by_scrub, is_chunky_scrub_active
is light.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
(cherry picked from commit 6c81c9bb0979c101c112e8ccd45880e08bfdb945)

src/osd/PrimaryLogPG.cc

index e70d5c4538223919ef8604dd64b83f6506a46d46..e81af6358aa99353bfb183aff67b230dbcc8fccc 100644 (file)
@@ -2059,7 +2059,7 @@ void PrimaryLogPG::do_op(OpRequestRef& op)
     return;
   }
 
-  if (write_ordered &&
+  if (write_ordered && scrubber.is_chunky_scrub_active() &&
       scrubber.write_blocked_by_scrub(head)) {
     dout(20) << __func__ << ": waiting for scrub" << dendl;
     waiting_for_scrub.push_back(op);