]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/OSD: wakeup all threads of shard. 36032/head
authorJianpeng Ma <jianpeng.ma@intel.com>
Tue, 21 Apr 2020 00:44:53 +0000 (08:44 +0800)
committerNathan Cutler <ncutler@suse.com>
Fri, 10 Jul 2020 21:28:18 +0000 (23:28 +0200)
In our test(4NVME), we found for 4K randread(8/16 mean shard, 2/1 mean
thread_per_shard):
QD 8_2(IOPS(k)) 16_1(IOPS(K)) 8_2(apply patch)
32  191  263  263.5

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
(cherry picked from commit d1cf3fb80bce50a13da0fd45dba65248cbe38383)

src/osd/OSD.cc

index e72f9f6f650f451cff898293f12390de85547849..9fe1653489a8140704d8f86085e468acb47dd6bc 100644 (file)
@@ -10711,7 +10711,7 @@ void OSD::ShardedOpWQ::_enqueue(OpSchedulerItem&& item) {
 
   if (empty) {
     std::lock_guard l{sdata->sdata_wait_lock};
-    sdata->sdata_cond.notify_one();
+    sdata->sdata_cond.notify_all();
   }
 }