From: Dmitry Torokhov dmitry.torokhov@gmail.com
commit 978134c4b192ed04ecf699be3e1b4d23b5d20457 upstream.
Because the kernel increments device's open count in input_open_device() even if device is inhibited, the counter should always be decremented in input_close_device() to keep it balanced.
Fixes: a181616487db ("Input: Add "inhibited" property") Reviewed-by: Peter Hutterer peter.hutterer@who-t.net Link: https://lore.kernel.org/r/ZFFz0xAdPNSL3PT7@google.com Cc: stable@vger.kernel.org Signed-off-by: Dmitry Torokhov dmitry.torokhov@gmail.com Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org --- drivers/input/input.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/input/input.c +++ b/drivers/input/input.c @@ -691,7 +691,7 @@ void input_close_device(struct input_han
__input_release_device(handle);
- if (!dev->inhibited && !--dev->users) { + if (!--dev->users && !dev->inhibited) { if (dev->poller) input_dev_poller_stop(dev->poller); if (dev->close)