Skip to content

Commit

Permalink
Merge pull request #15947 from asheplyakov/20428-bp-jewel
Browse files Browse the repository at this point in the history
jewel: osd: unlock sdata_op_ordering_lock with sdata_lock hold to avoid missing wakeup signal

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Liu-Chunmei <chunmei.liu@intel.com>
Reviewed-by: Xie Xingguo <xie.xingguo@zte.com.cn>
  • Loading branch information
smithfarm committed Aug 29, 2017
2 parents c40316e + 3fa277b commit 2a8e0f6
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion src/osd/OSD.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8729,9 +8729,9 @@ void OSD::ShardedOpWQ::_process(uint32_t thread_index, heartbeat_handle_d *hb )
assert(NULL != sdata);
sdata->sdata_op_ordering_lock.Lock();
if (sdata->pqueue->empty()) {
sdata->sdata_op_ordering_lock.Unlock();
osd->cct->get_heartbeat_map()->reset_timeout(hb, 4, 0);
sdata->sdata_lock.Lock();
sdata->sdata_op_ordering_lock.Unlock();
sdata->sdata_cond.WaitInterval(osd->cct, sdata->sdata_lock, utime_t(2, 0));
sdata->sdata_lock.Unlock();
sdata->sdata_op_ordering_lock.Lock();
Expand Down

0 comments on commit 2a8e0f6

Please sign in to comment.