From: Jianpeng Ma Date: Mon, 23 May 2016 12:17:53 +0000 (+0800) Subject: os/bluestore/BlueStore: optimize WALWQ::flush() X-Git-Tag: v11.0.0~301^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4e1294030e173ace29d955a6a94f56976b279d1f;p=ceph.git os/bluestore/BlueStore: optimize WALWQ::flush() In fact ThreadPool::drain will do a)wait WorkQueue::empty() is true b)wait processing thread to complete. So it can remove the same work which wait WorkQueue::empty(). Signed-off-by: Jianpeng Ma --- diff --git a/src/os/bluestore/BlueStore.h b/src/os/bluestore/BlueStore.h index 2b3bfdc6dbf9..f43dd18b01c0 100644 --- a/src/os/bluestore/BlueStore.h +++ b/src/os/bluestore/BlueStore.h @@ -749,11 +749,6 @@ public: } void flush() { - lock(); - while (!wal_queue.empty()) { - _wait(); - } - unlock(); drain(); } };