Using guard notation makes the code more compact and error handling
more robust by ensuring that serio ports are resumed in all code paths
when control leaves critical section.

Signed-off-by: Dmitry Torokhov <dmitry.torok...@gmail.com>
---
 drivers/input/keyboard/sunkbd.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/input/keyboard/sunkbd.c b/drivers/input/keyboard/sunkbd.c
index 72fb46029710..3299e1919b37 100644
--- a/drivers/input/keyboard/sunkbd.c
+++ b/drivers/input/keyboard/sunkbd.c
@@ -241,9 +241,8 @@ static void sunkbd_reinit(struct work_struct *work)
 
 static void sunkbd_enable(struct sunkbd *sunkbd, bool enable)
 {
-       serio_pause_rx(sunkbd->serio);
-       sunkbd->enabled = enable;
-       serio_continue_rx(sunkbd->serio);
+       scoped_guard(serio_pause_rx, sunkbd->serio)
+               sunkbd->enabled = enable;
 
        if (!enable) {
                wake_up_interruptible(&sunkbd->wait);
-- 
2.46.0.469.g59c65b2a67-goog


Reply via email to