mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 14:42:08 +02:00
soc: qcom: smem_state: simplify locking with guard()
Simplify error handling (less gotos) over locks with guard(). Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20240822164853.231087-4-krzysztof.kozlowski@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
parent
6187aaae71
commit
cd3a3e60eb
|
|
@ -3,6 +3,7 @@
|
|||
* Copyright (c) 2015, Sony Mobile Communications Inc.
|
||||
* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#include <linux/cleanup.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/module.h>
|
||||
|
|
@ -60,20 +61,15 @@ static struct qcom_smem_state *of_node_to_state(struct device_node *np)
|
|||
{
|
||||
struct qcom_smem_state *state;
|
||||
|
||||
mutex_lock(&list_lock);
|
||||
guard(mutex)(&list_lock);
|
||||
|
||||
list_for_each_entry(state, &smem_states, list) {
|
||||
if (state->of_node == np) {
|
||||
kref_get(&state->refcount);
|
||||
goto unlock;
|
||||
return state;
|
||||
}
|
||||
}
|
||||
state = ERR_PTR(-EPROBE_DEFER);
|
||||
|
||||
unlock:
|
||||
mutex_unlock(&list_lock);
|
||||
|
||||
return state;
|
||||
return ERR_PTR(-EPROBE_DEFER);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user