From: Jason Dillaman Date: Wed, 24 Feb 2016 21:20:02 +0000 (-0500) Subject: journal: permit fire-and-forget aio commit position flush X-Git-Tag: v10.1.0~257^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=b0dc047e36de741c543539ab27cba28dda374b09;p=ceph.git journal: permit fire-and-forget aio commit position flush Signed-off-by: Jason Dillaman --- diff --git a/src/journal/JournalMetadata.cc b/src/journal/JournalMetadata.cc index ca35fc2923d7..90fc36bd3238 100644 --- a/src/journal/JournalMetadata.cc +++ b/src/journal/JournalMetadata.cc @@ -504,12 +504,16 @@ void JournalMetadata::flush_commit_position(Context *on_safe) { Mutex::Locker locker(m_lock); if (m_commit_position_ctx == nullptr) { // nothing to flush - m_finisher->queue(on_safe, 0); + if (on_safe != nullptr) { + m_finisher->queue(on_safe, 0); + } return; } - m_commit_position_ctx = new C_FlushCommitPosition( - m_commit_position_ctx, on_safe); + if (on_safe != nullptr) { + m_commit_position_ctx = new C_FlushCommitPosition( + m_commit_position_ctx, on_safe); + } cancel_commit_task(); handle_commit_position_task(); }