[PATCH 6/6] powerpc: sysdev: use lock guard for mutex

From: Shrikanth Hegde
Date: Fri Mar 14 2025 - 01:47:46 EST


use guard(mutex) for scope based resource management of mutex
This would make the code simpler and easier to maintain.

More details on lock guards can be found at
https://lore.kernel.org/all/20230612093537.614161713@xxxxxxxxxxxxx/T/#u

Signed-off-by: Shrikanth Hegde <sshegde@xxxxxxxxxxxxx>
---
arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c b/arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c
index ce6c739c51e5..bbfc7c39b957 100644
--- a/arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c
+++ b/arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c
@@ -75,7 +75,7 @@ static ssize_t fsl_timer_wakeup_store(struct device *dev,
if (kstrtoll(buf, 0, &interval))
return -EINVAL;

- mutex_lock(&sysfs_lock);
+ guard(mutex)(&sysfs_lock);

if (fsl_wakeup->timer) {
disable_irq_wake(fsl_wakeup->timer->irq);
@@ -84,14 +84,12 @@ static ssize_t fsl_timer_wakeup_store(struct device *dev,
}

if (!interval) {
- mutex_unlock(&sysfs_lock);
return count;
}

fsl_wakeup->timer = mpic_request_timer(fsl_mpic_timer_irq,
fsl_wakeup, interval);
if (!fsl_wakeup->timer) {
- mutex_unlock(&sysfs_lock);
return -EINVAL;
}

@@ -99,15 +97,11 @@ static ssize_t fsl_timer_wakeup_store(struct device *dev,
if (ret) {
mpic_free_timer(fsl_wakeup->timer);
fsl_wakeup->timer = NULL;
- mutex_unlock(&sysfs_lock);
-
return ret;
}

mpic_start_timer(fsl_wakeup->timer);

- mutex_unlock(&sysfs_lock);
-
return count;
}

--
2.39.3