1 From 16b5acd3ecfdb2b19e4d98386da17dcf0f92c28a Mon Sep 17 00:00:00 2001
2 From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
3 Date: Thu, 7 Feb 2019 14:22:42 -0800
4 Subject: Input: ps2-gpio - flush TX work when closing port
6 [ Upstream commit 33a841ce5cef4ca6c18ad333248b6d273f54c839 ]
8 To ensure that TX work is not running after serio port has been torn down,
9 let's flush it when closing the port.
11 Reported-by: Sven Van Asbroeck <thesven73@gmail.com>
12 Acked-by: Danilo Krummrich <danilokrummrich@dk-develop.de>
13 Reviewed-by: Sven Van Asbroeck <TheSven73@gmail.com>
14 Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
15 Signed-off-by: Sasha Levin <sashal@kernel.org>
17 drivers/input/serio/ps2-gpio.c | 1 +
18 1 file changed, 1 insertion(+)
20 diff --git a/drivers/input/serio/ps2-gpio.c b/drivers/input/serio/ps2-gpio.c
21 index c62cceb97bb1..5e8d8384aa2a 100644
22 --- a/drivers/input/serio/ps2-gpio.c
23 +++ b/drivers/input/serio/ps2-gpio.c
24 @@ -76,6 +76,7 @@ static void ps2_gpio_close(struct serio *serio)
26 struct ps2_gpio_data *drvdata = serio->port_data;
28 + flush_delayed_work(&drvdata->tx_work);
29 disable_irq(drvdata->irq);