[PATCH 04/17] Input: ep93xx_keypad - use guard notation when acquiring mutex

From: Dmitry Torokhov
Date: Sun Aug 25 2024 - 01:17:32 EST


This 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.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
---
drivers/input/keyboard/ep93xx_keypad.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/input/keyboard/ep93xx_keypad.c b/drivers/input/keyboard/ep93xx_keypad.c
index 6b811d6bf625..a8df957ef261 100644
--- a/drivers/input/keyboard/ep93xx_keypad.c
+++ b/drivers/input/keyboard/ep93xx_keypad.c
@@ -184,15 +184,13 @@ static int ep93xx_keypad_suspend(struct device *dev)
struct ep93xx_keypad *keypad = platform_get_drvdata(pdev);
struct input_dev *input_dev = keypad->input_dev;

- mutex_lock(&input_dev->mutex);
+ guard(mutex)(&input_dev->mutex);

if (keypad->enabled) {
clk_disable(keypad->clk);
keypad->enabled = false;
}

- mutex_unlock(&input_dev->mutex);
-
return 0;
}

@@ -202,7 +200,7 @@ static int ep93xx_keypad_resume(struct device *dev)
struct ep93xx_keypad *keypad = platform_get_drvdata(pdev);
struct input_dev *input_dev = keypad->input_dev;

- mutex_lock(&input_dev->mutex);
+ guard(mutex)(&input_dev->mutex);

if (input_device_enabled(input_dev)) {
if (!keypad->enabled) {
@@ -212,8 +210,6 @@ static int ep93xx_keypad_resume(struct device *dev)
}
}

- mutex_unlock(&input_dev->mutex);
-
return 0;
}

--
2.46.0.295.g3b9ea8a38a-goog