diff --git a/drivers/misc/mei/gsc-me.c b/drivers/misc/mei/gsc-me.c index 376840b2c354..b38ddb04f2e8 100644 --- a/drivers/misc/mei/gsc-me.c +++ b/drivers/misc/mei/gsc-me.c @@ -242,7 +242,7 @@ static int __maybe_unused mei_gsc_pm_runtime_resume(struct device *device) if (mei_me_hw_use_polling(hw)) { hw->is_active = true; - wake_up(&hw->wait_active); + wake_up_interruptible(&hw->wait_active); } mutex_unlock(&dev->device_lock); diff --git a/drivers/misc/mei/hw-me.c b/drivers/misc/mei/hw-me.c index e7fbc02fb70f..ef7e1289ad7e 100644 --- a/drivers/misc/mei/hw-me.c +++ b/drivers/misc/mei/hw-me.c @@ -1441,9 +1441,9 @@ int mei_me_polling_thread(void *_dev) struct mei_me_hw *hw = to_me_hw(dev); u32 hcsr; - wait_event_timeout(hw->wait_active, - hw->is_active || kthread_should_stop(), - msecs_to_jiffies(MEI_POLLING_TIMEOUT_IDLE)); + wait_event_interruptible_timeout(hw->wait_active, + hw->is_active || kthread_should_stop(), + msecs_to_jiffies(MEI_POLLING_TIMEOUT_IDLE)); if (kthread_should_stop()) break;