From: Sage Weil Date: Mon, 3 Apr 2017 20:54:23 +0000 (-0400) Subject: os/bluestore: do not wake kv thread if only deferred events pending X-Git-Tag: v12.0.2~153^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4652f34c5feb6f22f207fd08ad07410fff2a9d2b;p=ceph.git os/bluestore: do not wake kv thread if only deferred events pending No need to wake up if there is only deferred work; we can do it lazily. Signed-off-by: Sage Weil --- diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 09c30c2b56b4..8bdee10a504c 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -7701,8 +7701,8 @@ void BlueStore::_kv_sync_thread() while (true) { assert(kv_committing.empty()); if (kv_queue.empty() && - deferred_done_queue.empty() && - deferred_stable_queue.empty()) { + ((deferred_done_queue.empty() && deferred_stable_queue.empty()) || + !deferred_aggressive)) { if (kv_stop) break; dout(20) << __func__ << " sleep" << dendl;