]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
FileJournal: rename queue_lock to finisher_lock
authorSamuel Just <sam.just@inktank.com>
Tue, 16 Oct 2012 16:33:01 +0000 (09:33 -0700)
committerSamuel Just <sam.just@inktank.com>
Tue, 30 Oct 2012 20:31:10 +0000 (13:31 -0700)
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/os/FileJournal.cc
src/os/FileJournal.h

index 651bf09a6613b5320340039e17ed1154334d5c8c..6f768611c6e0a8744f9b790ef419b391a68c89b2 100644 (file)
@@ -826,7 +826,7 @@ void FileJournal::queue_write_fin(uint64_t seq, Context *fin)
 
 void FileJournal::queue_completions_thru(uint64_t seq)
 {
-  assert(queue_lock.is_locked());
+  assert(finisher_lock.is_locked());
   utime_t now = ceph_clock_now(g_ceph_context);
   while (!completions_empty()) {
     completion_item next = completion_peek_front();
@@ -847,7 +847,7 @@ void FileJournal::queue_completions_thru(uint64_t seq)
     if (next.tracked_op)
       next.tracked_op->mark_event("journaled_completion_queued");
   }
-  queue_cond.Signal();
+  finisher_cond.Signal();
 }
 
 int FileJournal::prepare_single_write(bufferlist& bl, off64_t& queue_pos, uint64_t& orig_ops, uint64_t& orig_bytes)
@@ -1060,7 +1060,7 @@ void FileJournal::do_write(bufferlist& bl)
   assert(write_pos % header.alignment == 0);
 
   {
-    Mutex::Locker locker(queue_lock);
+    Mutex::Locker locker(finisher_lock);
     journaled_seq = writing_seq;
 
     // kick finisher?
@@ -1084,9 +1084,9 @@ void FileJournal::flush()
 {
   dout(5) << "waiting for completions to empty" << dendl;
   {
-    Mutex::Locker l(queue_lock);
+    Mutex::Locker l(finisher_lock);
     while (!completions_empty())
-      queue_cond.Wait(queue_lock);
+      finisher_cond.Wait(finisher_lock);
   }
   dout(5) << "flush waiting for finisher" << dendl;
   finisher->wait_for_empty();
@@ -1364,7 +1364,7 @@ void FileJournal::check_aio_completion()
   if (completed_something) {
     // kick finisher?  
     //  only if we haven't filled up recently!
-    Mutex::Locker locker(queue_lock);
+    Mutex::Locker locker(finisher_lock);
     journaled_seq = new_journaled_seq;
     if (full_state != FULL_NOTFULL) {
       dout(10) << "check_aio_completion NOT queueing finisher seq " << journaled_seq
@@ -1489,7 +1489,7 @@ void FileJournal::committed_thru(uint64_t seq)
   print_header();
 
   {
-    Mutex::Locker locker(queue_lock);
+    Mutex::Locker locker(finisher_lock);
     // completions!
     queue_completions_thru(seq);
     if (plug_journal_completions) {
index 8fe6af9c32d78ce4e7aa43db9181df0c8f7c6d9a..0dd880bdfea1f06a0b9e58c20376a62bffee9f9a 100644 (file)
@@ -32,11 +32,11 @@ using std::deque;
 /**
  * Implements journaling on top of block device or file.
  *
- * Lock ordering is write_lock > aio_lock > queue_lock
+ * Lock ordering is write_lock > aio_lock > finisher_lock
  */
 class FileJournal : public Journal {
 public:
-  /// Protected by queue_lock
+  /// Protected by finisher_lock
   struct completion_item {
     uint64_t seq;
     Context *finish;
@@ -59,8 +59,8 @@ public:
     write_item() : seq(0), alignment(0) {}
   };
 
-  Mutex queue_lock;
-  Cond queue_cond;
+  Mutex finisher_lock;
+  Cond finisher_cond;
   uint64_t journaled_seq;
   bool plug_journal_completions;
 
@@ -91,7 +91,7 @@ public:
   void submit_entry(uint64_t seq, bufferlist& bl, int alignment,
                    Context *oncommit,
                    TrackedOpRef osd_op = TrackedOpRef());
-  /// End protected by queue_lock
+  /// End protected by finisher_lock
 
   /*
    * journal header
@@ -312,7 +312,7 @@ private:
  public:
   FileJournal(uuid_d fsid, Finisher *fin, Cond *sync_cond, const char *f, bool dio=false, bool ai=true) : 
     Journal(fsid, fin, sync_cond),
-    queue_lock("FileJournal::queue_lock", false, true, false, g_ceph_context),
+    finisher_lock("FileJournal::finisher_lock", false, true, false, g_ceph_context),
     journaled_seq(0),
     plug_journal_completions(false),
     writeq_lock("FileJournal::writeq_lock", false, true, false, g_ceph_context),