From: Samuel Just Date: Tue, 16 Oct 2012 16:33:01 +0000 (-0700) Subject: FileJournal: rename queue_lock to finisher_lock X-Git-Tag: v0.55~130^2~41^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8d27edae032e9f2374ef43e20eb11755703a9d9f;p=ceph.git FileJournal: rename queue_lock to finisher_lock Signed-off-by: Samuel Just --- diff --git a/src/os/FileJournal.cc b/src/os/FileJournal.cc index 651bf09a6613..6f768611c6e0 100644 --- a/src/os/FileJournal.cc +++ b/src/os/FileJournal.cc @@ -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) { diff --git a/src/os/FileJournal.h b/src/os/FileJournal.h index 8fe6af9c32d7..0dd880bdfea1 100644 --- a/src/os/FileJournal.h +++ b/src/os/FileJournal.h @@ -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),