[PATCH] of: unittest: fix possible null-pointer dereferences in of_unittest_property_copy()

Tuo Li posted 1 patch 1 month ago
drivers/of/unittest.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
[PATCH] of: unittest: fix possible null-pointer dereferences in of_unittest_property_copy()
Posted by Tuo Li 1 month ago
This function first duplicates p1 and p2 into new, and then checks whether
the duplication succeeds. However, if the duplication fails (e.g., 
kzalloc() returns NULL in __of_prop_dup()), new will be NULL but is still
dereferenced in __of_prop_free(). To ensure that the unit test continues to
run even when duplication fails, add a NULL check before calling 
__of_prop_free().

Fixes: 1c5e3d9bf33b ("of: Add a helper to free property struct")
Signed-off-by: Tuo Li <islituo@gmail.com>
---
 drivers/of/unittest.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c
index 388e9ec2cccf..ea650a9ca2d9 100644
--- a/drivers/of/unittest.c
+++ b/drivers/of/unittest.c
@@ -804,11 +804,13 @@ static void __init of_unittest_property_copy(void)
 
 	new = __of_prop_dup(&p1, GFP_KERNEL);
 	unittest(new && propcmp(&p1, new), "empty property didn't copy correctly\n");
-	__of_prop_free(new);
+	if (new)
+		__of_prop_free(new);
 
 	new = __of_prop_dup(&p2, GFP_KERNEL);
 	unittest(new && propcmp(&p2, new), "non-empty property didn't copy correctly\n");
-	__of_prop_free(new);
+	if (new)
+		__of_prop_free(new);
 #endif
 }
 
-- 
2.43.0
Re: [PATCH] of: unittest: fix possible null-pointer dereferences in of_unittest_property_copy()
Posted by Rob Herring (Arm) 1 month ago
On Mon, 05 Jan 2026 15:14:38 +0800, Tuo Li wrote:
> This function first duplicates p1 and p2 into new, and then checks whether
> the duplication succeeds. However, if the duplication fails (e.g.,
> kzalloc() returns NULL in __of_prop_dup()), new will be NULL but is still
> dereferenced in __of_prop_free(). To ensure that the unit test continues to
> run even when duplication fails, add a NULL check before calling
> __of_prop_free().
> 
> Fixes: 1c5e3d9bf33b ("of: Add a helper to free property struct")
> Signed-off-by: Tuo Li <islituo@gmail.com>
> ---
>  drivers/of/unittest.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 

Applied, thanks!