Call cv_signal() with mutex held

In bqueue_dequeue(), call cv_signal() with bq_lock held.
Re-enable rsend_009_pos to test the fix.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Boris Protopopov <boris.protopopov@actifio.com>
Closes #5887
This commit is contained in:
Boris Protopopov
2017-06-26 17:36:49 -04:00
committed by Brian Behlendorf
parent 7e35ea783e
commit 03928896e1
2 changed files with 2 additions and 3 deletions
+1 -1
View File
@@ -97,8 +97,8 @@ bqueue_dequeue(bqueue_t *q)
ASSERT3P(ret, !=, NULL);
item_size = obj2node(q, ret)->bqn_size;
q->bq_size -= item_size;
mutex_exit(&q->bq_lock);
cv_signal(&q->bq_add_cv);
mutex_exit(&q->bq_lock);
return (ret);
}