Merge "neuron: block_client: Fix init loop"

This commit is contained in:
qctecmdr 2020-04-22 12:03:58 -07:00 committed by Gerrit - the friendly Code Review server
commit 304f2f125b

View File

@ -178,8 +178,8 @@ static int protocol_block_client_thread(void *data)
skb_req = NULL;
/* Wait for the channels to start */
wakeup_mask = 0;
while (!kthread_should_stop()) {
wakeup_mask = 0;
if (!channel_dev->max_size || !channel_dev->queue_length)
wakeup_mask |= CHANNEL_BIT(C_IN);
@ -192,10 +192,6 @@ static int protocol_block_client_thread(void *data)
wait_event_killable(kdata->wait_q,
kthread_should_stop() ||
(kdata->wakeups & wakeup_mask));
wakeup_mask &= ~xchg(&kdata->wakeups, 0);
/* flush shared variable to memory */
smp_mb__after_atomic();
}
if (kthread_should_stop())
return 0;