s390/qeth: when thread completes, wake up all waiters
[ Upstream commit 1063e432bb
]
qeth_wait_for_threads() is potentially called by multiple users, make
sure to notify all of them after qeth_clear_thread_running_bit()
adjusted the thread_running_mask. With no timeout, callers would
otherwise stall.
Signed-off-by: Julian Wiedmann <jwi@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
b469bdd0f5
commit
dd5ec73140
@ -961,7 +961,7 @@ void qeth_clear_thread_running_bit(struct qeth_card *card, unsigned long thread)
|
|||||||
spin_lock_irqsave(&card->thread_mask_lock, flags);
|
spin_lock_irqsave(&card->thread_mask_lock, flags);
|
||||||
card->thread_running_mask &= ~thread;
|
card->thread_running_mask &= ~thread;
|
||||||
spin_unlock_irqrestore(&card->thread_mask_lock, flags);
|
spin_unlock_irqrestore(&card->thread_mask_lock, flags);
|
||||||
wake_up(&card->wait_q);
|
wake_up_all(&card->wait_q);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(qeth_clear_thread_running_bit);
|
EXPORT_SYMBOL_GPL(qeth_clear_thread_running_bit);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user