]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: rename IO completions with _IO_
authorSage Weil <sage@redhat.com>
Mon, 28 Jul 2014 22:10:31 +0000 (15:10 -0700)
committerJohn Spray <john.spray@redhat.com>
Mon, 25 Aug 2014 00:34:16 +0000 (01:34 +0100)
If they are IO operations and need to take mds_lock on finish, label them.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mds/Locker.cc
src/mds/Locker.h
src/mds/MDCache.cc
src/mds/MDS.cc
src/mds/Server.cc

index c317a69fea55377f55eae06886693d003dee82f1..05bb6eb21965fc334909236735d70582a1ba3883 100644 (file)
@@ -1654,7 +1654,7 @@ version_t Locker::issue_file_data_version(CInode *in)
   return in->inode.file_data_version;
 }
 
-struct C_Locker_FileUpdate_finish : public Context {
+struct C_IO_Locker_FileUpdate_finish : public Context {
   Locker *locker;
   CInode *in;
   MutationRef mut;
@@ -1662,12 +1662,12 @@ struct C_Locker_FileUpdate_finish : public Context {
   client_t client;
   Capability *cap;
   MClientCaps *ack;
-  C_Locker_FileUpdate_finish(Locker *l, CInode *i, MutationRef& m,
-                             bool e=false, client_t c=-1,
-                            Capability *cp = 0,
-                            MClientCaps *ac = 0) : 
-    locker(l), in(i), mut(m), share(e), client(c), cap(cp),
-    ack(ac) {
+  C_IO_Locker_FileUpdate_finish(Locker *l, CInode *i, MutationRef& m,
+                               bool e=false, client_t c=-1,
+                               Capability *cp = 0,
+                               MClientCaps *ac = 0)
+    locker(l), in(i), mut(m), share(e), client(c), cap(cp),
+      ack(ac) {
     in->get(CInode::PIN_PTRWAITER);
   }
   void finish(int r) {
@@ -2242,7 +2242,7 @@ bool Locker::check_inode_max_size(CInode *in, bool force_wrlock,
     mdcache->journal_dirty_inode(mut.get(), metablob, in);
   }
   mds->mdlog->submit_entry(le,
-          new C_Locker_FileUpdate_finish(this, in, mut, true));
+          new C_IO_Locker_FileUpdate_finish(this, in, mut, true));
   wrlock_force(&in->filelock, mut);  // wrlock for duration of journal
   mut->auth_pin(in);
 
@@ -2803,8 +2803,10 @@ void Locker::_do_snap_update(CInode *in, snapid_t snap, int dirty, snapid_t foll
   mdcache->predirty_journal_parents(mut, &le->metablob, in, 0, PREDIRTY_PRIMARY, 0, follows);
   mdcache->journal_dirty_inode(mut.get(), &le->metablob, in, follows);
 
-  mds->mdlog->submit_entry(le, new C_Locker_FileUpdate_finish(this, in, mut, false,
-                                                             client, NULL, ack));
+  mds->mdlog->submit_entry(le, new C_IO_Locker_FileUpdate_finish(this, in, mut,
+                                                                false,
+                                                                client, NULL,
+                                                                ack));
 }
 
 
@@ -3040,8 +3042,10 @@ bool Locker::_do_cap_update(CInode *in, Capability *cap,
   mdcache->predirty_journal_parents(mut, &le->metablob, in, 0, PREDIRTY_PRIMARY, 0, follows);
   mdcache->journal_dirty_inode(mut.get(), &le->metablob, in, follows);
 
-  mds->mdlog->submit_entry(le, new C_Locker_FileUpdate_finish(this, in, mut, change_max,
-                                                             client, cap, ack));
+  mds->mdlog->submit_entry(le, new C_IO_Locker_FileUpdate_finish(this, in, mut,
+                                                                change_max,
+                                                                client, cap,
+                                                                ack));
   // only flush immediately if the lock is unstable, or unissued caps are wanted, or max_size is 
   // changing
   if (((dirty & (CEPH_CAP_FILE_EXCL|CEPH_CAP_FILE_WR)) && !in->filelock.is_stable()) ||
@@ -3910,7 +3914,7 @@ void Locker::scatter_writebehind(ScatterLock *lock)
   
   in->finish_scatter_gather_update_accounted(lock->get_type(), mut, &le->metablob);
 
-  mds->mdlog->submit_entry(le, new C_Locker_ScatterWB(this, lock, mut));
+  mds->mdlog->submit_entry(le, new C_IO_Locker_ScatterWB(this, lock, mut));
 }
 
 void Locker::scatter_writebehind_finish(ScatterLock *lock, MutationRef& mut)
index df8d109c6938723517fc6b70e6e4397366fee2ab..929054f2fdfce7632719c695f292e437cb50ad70 100644 (file)
@@ -178,12 +178,12 @@ protected:
   void scatter_tempsync(ScatterLock *lock, bool *need_issue=0);
 
   void scatter_writebehind(ScatterLock *lock);
-  class C_Locker_ScatterWB : public Context {
+  class C_IO_Locker_ScatterWB : public Context {
     Locker *locker;
     ScatterLock *lock;
     MutationRef mut;
   public:
-    C_Locker_ScatterWB(Locker *l, ScatterLock *sl, MutationRef& m) :
+    C_IO_Locker_ScatterWB(Locker *l, ScatterLock *sl, MutationRef& m) :
       locker(l), lock(sl), mut(m) {}
     void finish(int r) { 
       Mutex::Locker l(locker->mds->mds_lock);
@@ -284,7 +284,7 @@ public:
 private:
   friend class C_MDL_CheckMaxSize;
   friend class C_MDL_RequestInodeFileCaps;
-  friend struct C_Locker_FileUpdate_finish;
+  friend struct C_IO_Locker_FileUpdate_finish;
   friend class C_Locker_RetryCapRelease;
   friend class C_Locker_Eval;
 
index 68c77b3c3e3bc1f444ceeb3773879eb6334985ac..d803ef460587d00c43e2ef20f3cf9ed1888214b1 100644 (file)
@@ -5933,11 +5933,11 @@ void MDCache::truncate_inode(CInode *in, LogSegment *ls)
   _truncate_inode(in, ls);
 }
 
-struct C_MDC_TruncateFinish : public Context {
+struct C_IO_MDC_TruncateFinish : public Context {
   MDCache *mdc;
   CInode *in;
   LogSegment *ls;
-  C_MDC_TruncateFinish(MDCache *c, CInode *i, LogSegment *l) :
+  C_IO_MDC_TruncateFinish(MDCache *c, CInode *i, LogSegment *l) :
     mdc(c), in(i), ls(l) {}
   void finish(int r) {
     assert(r == 0 || r == -ENOENT);
@@ -5973,15 +5973,18 @@ void MDCache::_truncate_inode(CInode *in, LogSegment *ls)
   }
   dout(10) << "_truncate_inode  snapc " << snapc << " on " << *in << dendl;
   mds->filer->truncate(in->inode.ino, &in->inode.layout, *snapc,
-                      pi->truncate_size, pi->truncate_from-pi->truncate_size, pi->truncate_seq, utime_t(), 0,
-                      0, new C_OnFinisher(new C_MDC_TruncateFinish(this, in, ls), &mds->finisher));
+                      pi->truncate_size, pi->truncate_from-pi->truncate_size,
+                      pi->truncate_seq, utime_t(), 0,
+                      0, new C_OnFinisher(new C_IO_MDC_TruncateFinish(this, in,
+                                                                      ls),
+                                          &mds->finisher));
 }
 
-struct C_MDC_TruncateLogged : public Context {
+struct C_IO_MDC_TruncateLogged : public Context {
   MDCache *mdc;
   CInode *in;
   MutationRef mut;
-  C_MDC_TruncateLogged(MDCache *m, CInode *i, MutationRef& mu) :
+  C_IO_MDC_TruncateLogged(MDCache *m, CInode *i, MutationRef& mu) :
     mdc(m), in(i), mut(mu) {}
   void finish(int r) {
     mdc->truncate_inode_logged(in, mut);
@@ -6014,7 +6017,7 @@ void MDCache::truncate_inode_finish(CInode *in, LogSegment *ls)
   le->metablob.add_truncate_finish(in->ino(), ls->seq);
 
   journal_dirty_inode(mut.get(), &le->metablob, in);
-  mds->mdlog->submit_entry(le, new C_MDC_TruncateLogged(this, in, mut));
+  mds->mdlog->submit_entry(le, new C_IO_MDC_TruncateLogged(this, in, mut));
 
   // flush immediately if there are readers/writers waiting
   if (in->get_caps_wanted() & (CEPH_CAP_FILE_RD|CEPH_CAP_FILE_WR))
index 4de418dafd7998f59a2339432358ddd12b1f8a41..638563b9b18ae6748b5bd53d1f4bf4ff9e1c16a2 100644 (file)
@@ -1383,8 +1383,8 @@ class C_MDS_BootStart : public Context {
 public:
   C_MDS_BootStart(MDS *m, MDS::BootStep n) : mds(m), nextstep(n) {}
   void finish(int r) {
-      Mutex::Locker l(mds->mds_lock);
-      mds->boot_start(nextstep, r);
+    Mutex::Locker l(mds->mds_lock);
+    mds->boot_start(nextstep, r);
   }
 };
 
index 21bde20d1c0acadb935fbd80907d49e7614b18df..1e505eae4674674d3deae03399529f14831c2138 100644 (file)
@@ -823,16 +823,17 @@ void Server::journal_and_reply(MDRequestRef& mdr, CInode *in, CDentry *dn, LogEv
     mdlog->flush();
 }
 
-class C_MarkEvent : public Context
+class C_IO_MarkEvent : public Context
 {
   MDS *mds;
   Context *true_finisher;
   MDRequestRef mdr;
   string event_str;
 public:
-  C_MarkEvent(MDS *mds_, Context *f, MDRequestRef& _mdr,
-              const char *evt) :
-                mds(mds_), true_finisher(f), mdr(_mdr), event_str("journal_committed: ") {
+  C_IO_MarkEvent(MDS *mds_, Context *f, MDRequestRef& _mdr,
+                const char *evt)
+    : mds(mds_), true_finisher(f), mdr(_mdr),
+      event_str("journal_committed: ") {
     event_str += evt;
   }
   virtual void finish(int r) {
@@ -849,7 +850,7 @@ void Server::submit_mdlog_entry(LogEvent *le, Context *fin, MDRequestRef& mdr,
     string event_str("submit entry: ");
     event_str += event;
     mdr->mark_event(event_str);
-    mdlog->submit_entry(le, new C_MarkEvent(mds, fin, mdr, event));
+    mdlog->submit_entry(le, new C_IO_MarkEvent(mds, fin, mdr, event));
   } else
     mdlog->submit_entry(le, fin);
 }