]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osdc/Objecter: remove onack from remaining mutate methods
authorSage Weil <sage@redhat.com>
Wed, 21 Dec 2016 20:07:40 +0000 (15:07 -0500)
committerSage Weil <sage@redhat.com>
Wed, 28 Dec 2016 22:08:42 +0000 (17:08 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
12 files changed:
src/client/Client.cc
src/client/ObjecterWriteback.h
src/client/SyntheticClient.cc
src/librados/IoCtxImpl.cc
src/mds/JournalPointer.cc
src/mds/MDSTable.cc
src/mds/StrayManager.cc
src/osdc/Filer.cc
src/osdc/Filer.h
src/osdc/Journaler.cc
src/osdc/Objecter.h
src/tools/cephfs/Dumper.cc

index 7397b608758a36b135a30c0832c1395c7ce62c24..2b9901ef458b605fc85e7f06bdf0cb616498c9ea 100644 (file)
@@ -12061,7 +12061,6 @@ int Client::ll_write_block(Inode *in, uint64_t blockid,
   Cond cond;
   bool done;
   int r = 0;
-  Context *onack;
   Context *onsafe;
 
   if (length == 0) {
@@ -12070,13 +12069,11 @@ int Client::ll_write_block(Inode *in, uint64_t blockid,
   if (true || sync) {
     /* if write is stable, the epilogue is waiting on
      * flock */
-    onack = new C_NoopContext;
     onsafe = new C_SafeCond(&flock, &cond, &done, &r);
     done = false;
   } else {
     /* if write is unstable, we just place a barrier for
      * future commits to wait on */
-    onack = new C_NoopContext;
     /*onsafe = new C_Block_Sync(this, vino.ino,
                              barrier_interval(offset, offset + length), &r);
     */
@@ -12105,7 +12102,6 @@ int Client::ll_write_block(Inode *in, uint64_t blockid,
                  bl,
                  ceph::real_clock::now(),
                  0,
-                 onack,
                  onsafe);
 
   client_lock.Unlock();
@@ -12117,9 +12113,9 @@ int Client::ll_write_block(Inode *in, uint64_t blockid,
   }
 
   if (r < 0) {
-      return r;
+    return r;
   } else {
-      return length;
+    return length;
   }
 }
 
index 633b2fc6faf415b0650a53f37fd2d77e1fd8623c..d9b0647482d03d7aeffbee4f2ae08d0abe9989d9 100644 (file)
@@ -36,7 +36,7 @@ class ObjecterWriteback : public WritebackHandler {
                           __u32 trunc_seq, ceph_tid_t journal_tid,
                           Context *oncommit) {
     return m_objecter->write_trunc(oid, oloc, off, len, snapc, bl, mtime, 0,
-                                  trunc_size, trunc_seq, NULL,
+                                  trunc_size, trunc_seq,
                                   new C_OnFinisher(new C_Lock(m_lock,
                                                               oncommit),
                                                    m_finisher));
index 6c685a0244658a224f350563ffe18ad9ff74cbeb..518862357fbcec483be965fafe510c30f3222a80 100644 (file)
@@ -1045,9 +1045,6 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
   Mutex lock("synclient foo");
   Cond cond;
   bool ack;
-  bool safe;
-  C_GatherBuilder safeg(client->cct, new C_SafeCond(&lock, &cond, &safe));
-  Context *safegref = safeg.new_sub();  // take a ref
 
   while (!t.end()) {
 
@@ -1454,7 +1451,8 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
       object_locator_t oloc(SYNCLIENT_FIRST_POOL);
       uint64_t size;
       ceph::real_time mtime;
-      client->objecter->stat(oid, oloc, CEPH_NOSNAP, &size, &mtime, 0, new C_SafeCond(&lock, &cond, &ack));
+      client->objecter->stat(oid, oloc, CEPH_NOSNAP, &size, &mtime, 0,
+                            new C_SafeCond(&lock, &cond, &ack));
       while (!ack) cond.Wait(lock);
       lock.Unlock();
     }
@@ -1467,7 +1465,8 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
       object_locator_t oloc(SYNCLIENT_FIRST_POOL);
       lock.Lock();
       bufferlist bl;
-      client->objecter->read(oid, oloc, off, len, CEPH_NOSNAP, &bl, 0, new C_SafeCond(&lock, &cond, &ack));
+      client->objecter->read(oid, oloc, off, len, CEPH_NOSNAP, &bl, 0,
+                            new C_SafeCond(&lock, &cond, &ack));
       while (!ack) cond.Wait(lock);
       lock.Unlock();
     }
@@ -1485,9 +1484,7 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
       SnapContext snapc;
       client->objecter->write(oid, oloc, off, len, snapc, bl,
                              ceph::real_clock::now(), 0,
-                             new C_SafeCond(&lock, &cond, &ack),
-                             safeg.new_sub());
-      safeg.activate();
+                             new C_SafeCond(&lock, &cond, &ack));
       while (!ack) cond.Wait(lock);
       lock.Unlock();
     }
@@ -1502,9 +1499,7 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
       SnapContext snapc;
       client->objecter->zero(oid, oloc, off, len, snapc,
                             ceph::real_clock::now(), 0,
-                            new C_SafeCond(&lock, &cond, &ack),
-                            safeg.new_sub());
-      safeg.activate();
+                            new C_SafeCond(&lock, &cond, &ack));
       while (!ack) cond.Wait(lock);
       lock.Unlock();
     }
@@ -1518,15 +1513,6 @@ int SyntheticClient::play_trace(Trace& t, string& prefix, bool metadata_only)
 
   dout(10) << "trace finished on line " << t.get_line() << dendl;
 
-  // wait for safe after an object trace
-  safegref->complete(0);
-  lock.Lock();
-  while (!safe) {
-    dout(10) << "waiting for safe" << dendl;
-    cond.Wait(lock);
-  }
-  lock.Unlock();
-
   // close open files
   for (ceph::unordered_map<int64_t, int64_t>::iterator fi = open_files.begin();
        fi != open_files.end();
@@ -2274,7 +2260,6 @@ int SyntheticClient::create_objects(int nobj, int osize, int inflight)
   Mutex lock("create_objects lock");
   Cond cond;
   
-  int unack = 0;
   int unsafe = 0;
   
   list<utime_t> starts;
@@ -2295,13 +2280,12 @@ int SyntheticClient::create_objects(int nobj, int osize, int inflight)
     client->client_lock.Lock();
     client->objecter->write(oid, oloc, 0, osize, snapc, bl,
                            ceph::real_clock::now(), 0,
-                           new C_Ref(lock, cond, &unack),
                            new C_Ref(lock, cond, &unsafe));
     client->client_lock.Unlock();
 
     lock.Lock();
-    while (unack > inflight) {
-      dout(20) << "waiting for " << unack << " unack" << dendl;
+    while (unsafe > inflight) {
+      dout(20) << "waiting for " << unsafe << " unsafe" << dendl;
       cond.Wait(lock);
     }
     lock.Unlock();
@@ -2312,10 +2296,6 @@ int SyntheticClient::create_objects(int nobj, int osize, int inflight)
   }
 
   lock.Lock();
-  while (unack > 0) {
-    dout(20) << "waiting for " << unack << " unack" << dendl;
-    cond.Wait(lock);
-  }
   while (unsafe > 0) {
     dout(10) << "waiting for " << unsafe << " unsafe" << dendl;
     cond.Wait(lock);
index 4b72457b989d59ab8d10b99f2054015ede5b0fc4..cef689d9e0cc424ffa50ae7be9f6343debf12046 100644 (file)
@@ -878,7 +878,7 @@ int librados::IoCtxImpl::aio_write(const object_t &oid, AioCompletionImpl *c,
   Objecter::Op *o = objecter->prepare_write_op(
     oid, oloc,
     off, len, snapc, bl, ut, 0,
-    NULL, onack, &c->objver);
+    onack, &c->objver);
   objecter->op_submit(o, &c->tid);
 
   return 0;
@@ -903,7 +903,7 @@ int librados::IoCtxImpl::aio_append(const object_t &oid, AioCompletionImpl *c,
   Objecter::Op *o = objecter->prepare_append_op(
     oid, oloc,
     len, snapc, bl, ut, 0,
-    NULL, onack, &c->objver);
+    onack, &c->objver);
   objecter->op_submit(o, &c->tid);
 
   return 0;
@@ -929,7 +929,7 @@ int librados::IoCtxImpl::aio_write_full(const object_t &oid,
   Objecter::Op *o = objecter->prepare_write_full_op(
     oid, oloc,
     snapc, bl, ut, 0,
-    NULL, onack, &c->objver);
+    onack, &c->objver);
   objecter->op_submit(o, &c->tid);
 
   return 0;
@@ -960,7 +960,7 @@ int librados::IoCtxImpl::aio_writesame(const object_t &oid,
     oid, oloc,
     write_len, off,
     snapc, bl, ut, 0,
-    NULL, onack, &c->objver);
+    onack, &c->objver);
   objecter->op_submit(o, &c->tid);
 
   return 0;
@@ -982,7 +982,7 @@ int librados::IoCtxImpl::aio_remove(const object_t &oid, AioCompletionImpl *c, i
   Objecter::Op *o = objecter->prepare_remove_op(
     oid, oloc,
     snapc, ut, flags,
-    NULL, onack, &c->objver);
+    onack, &c->objver);
   objecter->op_submit(o, &c->tid);
 
   return 0;
index e0ea57ce4cbb3480b3457c3893fed8fa4299e73f..fdf6a3d9f60f01a3194d586437e8601cda64544a 100644 (file)
@@ -92,7 +92,7 @@ int JournalPointer::save(Objecter *objecter) const
   C_SaferCond waiter;
   objecter->write_full(object_t(object_id), object_locator_t(pool_id),
                       SnapContext(), data,
-                      ceph::real_clock::now(), 0, NULL,
+                      ceph::real_clock::now(), 0,
                       &waiter);
   int write_result = waiter.wait();
   if (write_result < 0) {
@@ -115,7 +115,7 @@ void JournalPointer::save(Objecter *objecter, Context *completion) const
 
   objecter->write_full(object_t(get_object_id()), object_locator_t(pool_id),
                       SnapContext(), data,
-                      ceph::real_clock::now(), 0, NULL,
+                      ceph::real_clock::now(), 0,
                       completion);
 }
 
index 0917110cfdeb309638470183d62b0fb02d49b2cb..4dff77aac01b8ffa99dd07848b4a20ae1e84b7c4 100644 (file)
@@ -83,7 +83,6 @@ void MDSTable::save(MDSInternalContextBase *onfinish, version_t v)
   mds->objecter->write_full(oid, oloc,
                            snapc,
                            bl, ceph::real_clock::now(), 0,
-                           NULL,
                            new C_OnFinisher(new C_IO_MT_Save(this, version),
                                             mds->finisher));
 }
index 551a376a74e0e9b90ab55c45345e450331b9cff0..945146f795d3e11c9feb34d826d028d57a933a14 100644 (file)
@@ -120,7 +120,7 @@ void StrayManager::purge(CDentry *dn, uint32_t op_allowance)
       dout(10) << __func__ << " remove dirfrag " << oid << dendl;
       mds->objecter->remove(oid, oloc, nullsnapc,
                            ceph::real_clock::now(),
-                           0, NULL, gather.new_sub());
+                           0, gather.new_sub());
     }
     assert(gather.has_subs());
     gather.activate();
@@ -164,7 +164,7 @@ void StrayManager::purge(CDentry *dn, uint32_t op_allowance)
             << " pool " << oloc.pool << " snapc " << snapc << dendl;
     mds->objecter->remove(oid, oloc, *snapc,
                          ceph::real_clock::now(), 0,
-                         NULL, gather.new_sub());
+                         gather.new_sub());
   }
   // remove old backtrace objects
   for (compact_set<int64_t>::iterator p = pi->old_pools.begin();
@@ -175,7 +175,7 @@ void StrayManager::purge(CDentry *dn, uint32_t op_allowance)
             << " old pool " << *p << " snapc " << snapc << dendl;
     mds->objecter->remove(oid, oloc, *snapc,
                          ceph::real_clock::now(), 0,
-                         NULL, gather.new_sub());
+                         gather.new_sub());
   }
   assert(gather.has_subs());
   gather.activate();
index 9d7db580d10d86985d5f6cd19c4acf25a4dec711..5d2884b50892c8fb60adfde8c553703571f2d15d 100644 (file)
@@ -323,7 +323,7 @@ int Filer::purge_range(inodeno_t ino,
   if (num_obj == 1) {
     object_t oid = file_object_t(ino, first_obj);
     object_locator_t oloc = OSDMap::file_to_object_locator(*layout);
-    objecter->remove(oid, oloc, snapc, mtime, flags, NULL, oncommit);
+    objecter->remove(oid, oloc, snapc, mtime, flags, oncommit);
     return 0;
   }
 
@@ -373,7 +373,7 @@ void Filer::_do_purge_range(PurgeRange *pr, int fin)
   // Issue objecter ops outside pr->lock to avoid lock dependency loop
   for (const auto& oid : remove_oids) {
     object_locator_t oloc = OSDMap::file_to_object_locator(pr->layout);
-    objecter->remove(oid, oloc, pr->snapc, pr->mtime, pr->flags, NULL,
+    objecter->remove(oid, oloc, pr->snapc, pr->mtime, pr->flags,
                     new C_OnFinisher(new C_PurgeRange(this, pr), finisher));
   }
 }
index 8b6389210ddadee42bb2978578bcc18f626a077b..db752cbc03ea2c853c48cb65dc9464aa055dce52 100644 (file)
@@ -163,8 +163,7 @@ class Filer {
            int op_flags = 0) {
     vector<ObjectExtent> extents;
     Striper::file_to_extents(cct, ino, layout, offset, len, 0, extents);
-    objecter->sg_write(extents, snapc, bl, mtime, flags, NULL, oncommit,
-                      op_flags);
+    objecter->sg_write(extents, snapc, bl, mtime, flags, oncommit, op_flags);
   }
 
   void write_trunc(inodeno_t ino,
@@ -183,7 +182,7 @@ class Filer {
     Striper::file_to_extents(cct, ino, layout, offset, len, truncate_size,
                             extents);
     objecter->sg_write_trunc(extents, snapc, bl, mtime, flags,
-                      truncate_size, truncate_seq, NULL, oncommit, op_flags);
+                      truncate_size, truncate_seq, oncommit, op_flags);
   }
 
   void truncate(inodeno_t ino,
@@ -235,11 +234,10 @@ class Filer {
       if (extents[0].offset == 0 && extents[0].length == layout->object_size
          && (!keep_first || extents[0].objectno != 0))
        objecter->remove(extents[0].oid, extents[0].oloc,
-                        snapc, mtime, flags, NULL, oncommit);
+                        snapc, mtime, flags, oncommit);
       else
        objecter->zero(extents[0].oid, extents[0].oloc, extents[0].offset,
-                      extents[0].length, snapc, mtime, flags, NULL,
-                      oncommit);
+                      extents[0].length, snapc, mtime, flags, oncommit);
     } else {
       C_GatherBuilder gcom(cct, oncommit);
       for (vector<ObjectExtent>::iterator p = extents.begin();
@@ -249,12 +247,10 @@ class Filer {
            (!keep_first || p->objectno != 0))
          objecter->remove(p->oid, p->oloc,
                           snapc, mtime, flags,
-                          NULL,
                           oncommit ? gcom.new_sub():0);
        else
          objecter->zero(p->oid, p->oloc, p->offset, p->length,
                         snapc, mtime, flags,
-                        NULL,
                         oncommit ? gcom.new_sub():0);
       }
       gcom.activate();
index 357f937f67e92b33202426928bd76ddb20016e98..8d2b33ac684ebb2c925ded8c850ddf2c57f738cc 100644 (file)
@@ -448,7 +448,7 @@ void Journaler::_write_head(Context *oncommit)
   object_t oid = file_object_t(ino, 0);
   object_locator_t oloc(pg_pool);
   objecter->write_full(oid, oloc, snapc, bl, ceph::real_clock::now(), 0,
-                      NULL, wrap_finisher(new C_WriteHead(
+                      wrap_finisher(new C_WriteHead(
                                             this, last_written,
                                             wrap_finisher(oncommit))),
                       0, 0, write_iohint);
index 6cf42658c205bf44765caa1ed5ac67a296ce0c3a..0cad6b1e486016ce1ab5c605026f36184b6429fd 100644 (file)
@@ -2459,7 +2459,7 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t off, uint64_t len, const SnapContext& snapc,
     const bufferlist &bl, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit, version_t *objver = NULL,
+    Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
@@ -2471,7 +2471,7 @@ public:
     ops[i].indata = bl;
     ops[i].op.flags = op_flags;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     return o;
@@ -2480,10 +2480,10 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t off, uint64_t len, const SnapContext& snapc,
     const bufferlist &bl, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit, version_t *objver = NULL,
+    Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
     Op *o = prepare_write_op(oid, oloc, off, len, snapc, bl, mtime, flags,
-                            onack, oncommit, objver, extra_ops, op_flags);
+                            oncommit, objver, extra_ops, op_flags);
     ceph_tid_t tid;
     op_submit(o, &tid);
     return tid;
@@ -2492,7 +2492,7 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t len, const SnapContext& snapc,
     const bufferlist &bl, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit,
+    Context *oncommit,
     version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
@@ -2504,7 +2504,7 @@ public:
     ops[i].op.extent.truncate_seq = 0;
     ops[i].indata = bl;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     return o;
@@ -2513,11 +2513,11 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t len, const SnapContext& snapc,
     const bufferlist &bl, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit,
+    Context *oncommit,
     version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL) {
     Op *o = prepare_append_op(oid, oloc, len, snapc, bl, mtime, flags,
-                             onack, oncommit, objver, extra_ops);
+                             oncommit, objver, extra_ops);
     ceph_tid_t tid;
     op_submit(o, &tid);
     return tid;
@@ -2526,7 +2526,7 @@ public:
                         uint64_t off, uint64_t len, const SnapContext& snapc,
                         const bufferlist &bl, ceph::real_time mtime, int flags,
                         uint64_t trunc_size, __u32 trunc_seq,
-                        Context *onack, Context *oncommit,
+                        Context *oncommit,
                         version_t *objver = NULL,
                         ObjectOperation *extra_ops = NULL, int op_flags = 0) {
     vector<OSDOp> ops;
@@ -2539,7 +2539,7 @@ public:
     ops[i].indata = bl;
     ops[i].op.flags = op_flags;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2549,7 +2549,7 @@ public:
   Op *prepare_write_full_op(
     const object_t& oid, const object_locator_t& oloc,
     const SnapContext& snapc, const bufferlist &bl,
-    ceph::real_time mtime, int flags, Context *onack,
+    ceph::real_time mtime, int flags,
     Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
     vector<OSDOp> ops;
@@ -2560,7 +2560,7 @@ public:
     ops[i].indata = bl;
     ops[i].op.flags = op_flags;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     return o;
@@ -2568,11 +2568,11 @@ public:
   ceph_tid_t write_full(
     const object_t& oid, const object_locator_t& oloc,
     const SnapContext& snapc, const bufferlist &bl,
-    ceph::real_time mtime, int flags, Context *onack,
+    ceph::real_time mtime, int flags,
     Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
     Op *o = prepare_write_full_op(oid, oloc, snapc, bl, mtime, flags,
-                                 onack, oncommit, objver, extra_ops, op_flags);
+                                 oncommit, objver, extra_ops, op_flags);
     ceph_tid_t tid;
     op_submit(o, &tid);
     return tid;
@@ -2581,7 +2581,7 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t write_len, uint64_t off,
     const SnapContext& snapc, const bufferlist &bl,
-    ceph::real_time mtime, int flags, Context *onack,
+    ceph::real_time mtime, int flags,
     Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
 
@@ -2594,7 +2594,7 @@ public:
     ops[i].indata = bl;
     ops[i].op.flags = op_flags;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     return o;
@@ -2603,12 +2603,12 @@ public:
     const object_t& oid, const object_locator_t& oloc,
     uint64_t write_len, uint64_t off,
     const SnapContext& snapc, const bufferlist &bl,
-    ceph::real_time mtime, int flags, Context *onack,
+    ceph::real_time mtime, int flags,
     Context *oncommit, version_t *objver = NULL,
     ObjectOperation *extra_ops = NULL, int op_flags = 0) {
 
     Op *o = prepare_writesame_op(oid, oloc, write_len, off, snapc, bl,
-                                mtime, flags, onack, oncommit, objver,
+                                mtime, flags, oncommit, objver,
                                 extra_ops, op_flags);
 
     ceph_tid_t tid;
@@ -2617,7 +2617,7 @@ public:
   }
   ceph_tid_t trunc(const object_t& oid, const object_locator_t& oloc,
                   const SnapContext& snapc, ceph::real_time mtime, int flags,
-                  uint64_t trunc_size, __u32 trunc_seq, Context *onack,
+                  uint64_t trunc_size, __u32 trunc_seq,
                   Context *oncommit, version_t *objver = NULL,
                   ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
@@ -2627,7 +2627,7 @@ public:
     ops[i].op.extent.truncate_size = trunc_size;
     ops[i].op.extent.truncate_seq = trunc_seq;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2636,7 +2636,7 @@ public:
   }
   ceph_tid_t zero(const object_t& oid, const object_locator_t& oloc,
                  uint64_t off, uint64_t len, const SnapContext& snapc,
-                 ceph::real_time mtime, int flags, Context *onack, Context *oncommit,
+                 ceph::real_time mtime, int flags, Context *oncommit,
             version_t *objver = NULL, ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
@@ -2644,7 +2644,7 @@ public:
     ops[i].op.extent.offset = off;
     ops[i].op.extent.length = len;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2653,14 +2653,14 @@ public:
   }
   ceph_tid_t rollback_object(const object_t& oid, const object_locator_t& oloc,
                             const SnapContext& snapc, snapid_t snapid,
-                            ceph::real_time mtime, Context *onack, Context *oncommit,
+                            ceph::real_time mtime, Context *oncommit,
                             version_t *objver = NULL,
                             ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
     ops[i].op.op = CEPH_OSD_OP_ROLLBACK;
     ops[i].op.snap.snapid = snapid;
-    Op *o = new Op(oid, oloc, ops, CEPH_OSD_FLAG_WRITE, onack, oncommit,
+    Op *o = new Op(oid, oloc, ops, CEPH_OSD_FLAG_WRITE, NULL, oncommit,
                   objver);
     o->mtime = mtime;
     o->snapc = snapc;
@@ -2670,7 +2670,7 @@ public:
   }
   ceph_tid_t create(const object_t& oid, const object_locator_t& oloc,
                    const SnapContext& snapc, ceph::real_time mtime, int global_flags,
-                   int create_flags, Context *onack, Context *oncommit,
+                   int create_flags, Context *oncommit,
                    version_t *objver = NULL,
                    ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
@@ -2678,7 +2678,7 @@ public:
     ops[i].op.op = CEPH_OSD_OP_CREATE;
     ops[i].op.flags = create_flags;
     Op *o = new Op(oid, oloc, ops, global_flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2688,13 +2688,13 @@ public:
   Op *prepare_remove_op(
     const object_t& oid, const object_locator_t& oloc,
     const SnapContext& snapc, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit,
+    Context *oncommit,
     version_t *objver = NULL, ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
     ops[i].op.op = CEPH_OSD_OP_DELETE;
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     return o;
@@ -2702,10 +2702,10 @@ public:
   ceph_tid_t remove(
     const object_t& oid, const object_locator_t& oloc,
     const SnapContext& snapc, ceph::real_time mtime, int flags,
-    Context *onack, Context *oncommit,
+    Context *oncommit,
     version_t *objver = NULL, ObjectOperation *extra_ops = NULL) {
     Op *o = prepare_remove_op(oid, oloc, snapc, mtime, flags,
-                             onack, oncommit, objver, extra_ops);
+                             oncommit, objver, extra_ops);
     ceph_tid_t tid;
     op_submit(o, &tid);
     return tid;
@@ -2714,7 +2714,7 @@ public:
   ceph_tid_t setxattr(const object_t& oid, const object_locator_t& oloc,
              const char *name, const SnapContext& snapc, const bufferlist &bl,
              ceph::real_time mtime, int flags,
-             Context *onack, Context *oncommit,
+             Context *oncommit,
              version_t *objver = NULL, ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
@@ -2725,7 +2725,7 @@ public:
       ops[i].indata.append(name);
     ops[i].indata.append(bl);
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2735,7 +2735,7 @@ public:
   ceph_tid_t removexattr(const object_t& oid, const object_locator_t& oloc,
              const char *name, const SnapContext& snapc,
              ceph::real_time mtime, int flags,
-             Context *onack, Context *oncommit,
+             Context *oncommit,
              version_t *objver = NULL, ObjectOperation *extra_ops = NULL) {
     vector<OSDOp> ops;
     int i = init_ops(ops, 1, extra_ops);
@@ -2745,7 +2745,7 @@ public:
     if (name)
       ops[i].indata.append(name);
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
-                  CEPH_OSD_FLAG_WRITE, onack, oncommit, objver);
+                  CEPH_OSD_FLAG_WRITE, NULL, oncommit, objver);
     o->mtime = mtime;
     o->snapc = snapc;
     ceph_tid_t tid;
@@ -2883,15 +2883,14 @@ public:
 
   void sg_write_trunc(vector<ObjectExtent>& extents, const SnapContext& snapc,
                      const bufferlist& bl, ceph::real_time mtime, int flags,
-                     uint64_t trunc_size, __u32 trunc_seq, Context *onack,
+                     uint64_t trunc_size, __u32 trunc_seq,
                      Context *oncommit, int op_flags = 0) {
     if (extents.size() == 1) {
       write_trunc(extents[0].oid, extents[0].oloc, extents[0].offset,
                  extents[0].length, snapc, bl, mtime, flags,
-                 extents[0].truncate_size, trunc_seq, onack, oncommit,
+                 extents[0].truncate_size, trunc_seq, oncommit,
                  0, 0, op_flags);
     } else {
-      C_GatherBuilder gack(cct, onack);
       C_GatherBuilder gcom(cct, oncommit);
       for (vector<ObjectExtent>::iterator p = extents.begin();
           p != extents.end();
@@ -2905,19 +2904,17 @@ public:
        assert(cur.length() == p->length);
        write_trunc(p->oid, p->oloc, p->offset, p->length,
              snapc, cur, mtime, flags, p->truncate_size, trunc_seq,
-             onack ? gack.new_sub():0,
              oncommit ? gcom.new_sub():0,
              0, 0, op_flags);
       }
-      gack.activate();
       gcom.activate();
     }
   }
 
   void sg_write(vector<ObjectExtent>& extents, const SnapContext& snapc,
                const bufferlist& bl, ceph::real_time mtime, int flags,
-               Context *onack, Context *oncommit, int op_flags = 0) {
-    sg_write_trunc(extents, snapc, bl, mtime, flags, 0, 0, onack, oncommit,
+               Context *oncommit, int op_flags = 0) {
+    sg_write_trunc(extents, snapc, bl, mtime, flags, 0, 0, oncommit,
                   op_flags);
   }
 
index 41e1d66a8339ee6d2e456198ce6ca168faf53b11..5265e842d11b5d79d104ea2295a9253e1005c37e 100644 (file)
@@ -260,7 +260,7 @@ int Dumper::undump(const char *dump_file)
   lock.Lock();
   objecter->write_full(oid, oloc, snapc, hbl,
                       ceph::real_clock::now(), 0,
-                      NULL, &header_cond);
+                      &header_cond);
   lock.Unlock();
 
   r = header_cond.wait();