diff options
Diffstat (limited to 'drivers/input/input-poller.c')
| -rw-r--r-- | drivers/input/input-poller.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/input/input-poller.c b/drivers/input/input-poller.c index 7d6b4e8879f1..1ce83d6521bb 100644 --- a/drivers/input/input-poller.c +++ b/drivers/input/input-poller.c @@ -4,6 +4,7 @@ */ #include <linux/device.h> +#include <linux/export.h> #include <linux/input.h> #include <linux/jiffies.h> #include <linux/mutex.h> @@ -162,18 +163,16 @@ static ssize_t input_dev_set_poll_interval(struct device *dev, if (interval > poller->poll_interval_max) return -EINVAL; - mutex_lock(&input->mutex); + guard(mutex)(&input->mutex); poller->poll_interval = interval; - if (input->users) { + if (input_device_enabled(input)) { cancel_delayed_work_sync(&poller->work); if (poller->poll_interval > 0) input_dev_poller_queue_work(poller); } - mutex_unlock(&input->mutex); - return count; } |
