]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: use null if on_finisher is not needed 21999/head
authormyoungwon oh <omwmw@sk.com>
Tue, 15 May 2018 08:47:56 +0000 (17:47 +0900)
committermyoungwon oh <omwmw@sk.com>
Mon, 4 Jun 2018 00:51:55 +0000 (09:51 +0900)
Signed-off-by: Myoungwon Oh <omwmw@sk.com>
src/osd/PrimaryLogPG.cc

index 769133244cad8782362df55c2b16f9a7a125065a..ada1f92f34995f9eb2318dacff01bdd41809930e 100644 (file)
@@ -3454,10 +3454,17 @@ void PrimaryLogPG::refcount_manifest(ObjectContextRef obc, object_locator_t oloc
   }                                                     
   
   unsigned n = info.pgid.hash_to_shard(osd->m_objecter_finishers);
+  Context *c;
+  if (cb) {
+    c = new C_OnFinisher(cb, osd->objecter_finishers[n]);
+  } else {
+    c = NULL;
+  }
+
   osd->objecter->mutate(
     soid.oid, oloc, obj_op, snapc,
     ceph::real_clock::from_ceph_timespec(obc->obs.oi.mtime),
-    flags, new C_OnFinisher(cb, osd->objecter_finishers[n]));
+    flags, c);
 }  
 
 void PrimaryLogPG::do_proxy_chunked_read(OpRequestRef op, ObjectContextRef obc, int op_index,