summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/drivers/net/ieee802154/dw3000_stm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/drivers/net/ieee802154/dw3000_stm.c b/kernel/drivers/net/ieee802154/dw3000_stm.c
index 4b0f1cb..0fb84b8 100644
--- a/kernel/drivers/net/ieee802154/dw3000_stm.c
+++ b/kernel/drivers/net/ieee802154/dw3000_stm.c
@@ -87,8 +87,8 @@ int dw3000_enqueue_generic(struct dw3000 *dw, struct dw3000_stm_command *cmd)
stm->pending_work |= work;
stm->generic_work = cmd;
wake_up_locked(&stm->work_wq);
- wait_event_interruptible_locked_irq(stm->work_wq,
- !(stm->pending_work & work));
+ while (-ERESTARTSYS == wait_event_interruptible_locked_irq(stm->work_wq,
+ !(stm->pending_work & work))) {}
spin_unlock_irqrestore(&stm->work_wq.lock, flags);
mutex_unlock(&stm->mtx);
return cmd->ret;