Input: ps2-gpio - use guard notation when acquiring mutex
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 5 Sep 2024 04:17:19 +0000 (21:17 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 4 Oct 2024 07:58:16 +0000 (00:58 -0700)
Using guard notation makes the code more compact and error handling
more robust by ensuring that mutexes are released in all code paths
when control leaves critical section.

Link: https://lore.kernel.org/r/20240905041732.2034348-15-dmitry.torokhov@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/serio/ps2-gpio.c

index 3a43139..3e4ae2c 100644 (file)
@@ -133,12 +133,12 @@ static int ps2_gpio_write(struct serio *serio, unsigned char val)
        int ret = 0;
 
        if (in_task()) {
-               mutex_lock(&drvdata->tx.mutex);
+               guard(mutex)(&drvdata->tx.mutex);
+
                __ps2_gpio_write(serio, val);
                if (!wait_for_completion_timeout(&drvdata->tx.complete,
                                                 msecs_to_jiffies(10000)))
                        ret = SERIO_TIMEOUT;
-               mutex_unlock(&drvdata->tx.mutex);
        } else {
                __ps2_gpio_write(serio, val);
        }