[PATCH] of: unittest: Unlock on error in unittest_data_add()

Dan Carpenter posted 1 patch 9 months, 1 week ago
drivers/of/unittest.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
[PATCH] of: unittest: Unlock on error in unittest_data_add()
Posted by Dan Carpenter 9 months, 1 week ago
The of_overlay_mutex_unlock() was accidentally deleted if "of_root" is
NULL.  Change this to a goto unlock.

Fixes: d1eabd218ede ("of: unittest: treat missing of_root as error instead of fixing up")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 drivers/of/unittest.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c
index 64d301893af7..eeb370e0f507 100644
--- a/drivers/of/unittest.c
+++ b/drivers/of/unittest.c
@@ -2029,15 +2029,16 @@ static int __init unittest_data_add(void)
 	rc = of_resolve_phandles(unittest_data_node);
 	if (rc) {
 		pr_err("%s: Failed to resolve phandles (rc=%i)\n", __func__, rc);
-		of_overlay_mutex_unlock();
-		return -EINVAL;
+		rc = -EINVAL;
+		goto unlock;
 	}
 
 	/* attach the sub-tree to live tree */
 	if (!of_root) {
 		pr_warn("%s: no live tree to attach sub-tree\n", __func__);
 		kfree(unittest_data);
-		return -ENODEV;
+		rc = -ENODEV;
+		goto unlock;
 	}
 
 	EXPECT_BEGIN(KERN_INFO,
@@ -2056,9 +2057,10 @@ static int __init unittest_data_add(void)
 	EXPECT_END(KERN_INFO,
 		   "Duplicate name in testcase-data, renamed to \"duplicate-name#1\"");
 
+unlock:
 	of_overlay_mutex_unlock();
 
-	return 0;
+	return rc;
 }
 
 #ifdef CONFIG_OF_OVERLAY
-- 
2.47.2
Re: [PATCH] of: unittest: Unlock on error in unittest_data_add()
Posted by Rob Herring (Arm) 9 months ago
On Wed, 30 Apr 2025 11:05:40 +0300, Dan Carpenter wrote:
> The of_overlay_mutex_unlock() was accidentally deleted if "of_root" is
> NULL.  Change this to a goto unlock.
> 
> Fixes: d1eabd218ede ("of: unittest: treat missing of_root as error instead of fixing up")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
>  drivers/of/unittest.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 

Applied, thanks!
Re: [PATCH] of: unittest: Unlock on error in unittest_data_add()
Posted by Stephen Boyd 9 months ago
Quoting Dan Carpenter (2025-04-30 01:05:40)
> The of_overlay_mutex_unlock() was accidentally deleted if "of_root" is
> NULL.  Change this to a goto unlock.
> 
> Fixes: d1eabd218ede ("of: unittest: treat missing of_root as error instead of fixing up")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---

Reviewed-by: Stephen Boyd <sboyd@kernel.org>