[PATCH v2] ofnode: NULL check bootscr_flash_size before dereference
Andrew Goodbody
andrew.goodbody at linaro.org
Mon Jul 7 12:04:29 CEST 2025
Move the NULL check of bootscr_flash_size to before the first time it is
dereferenced to avoid any possible segment violations.
This issue found by Smatch.
Signed-off-by: Andrew Goodbody <andrew.goodbody at linaro.org>
---
Changes in v2:
- Refactor to coalesce duplicate assignments of *bootscr_flash_offset
- Link to v1: https://lore.kernel.org/r/20250703-ofnode_fix-v1-1-c739233efb58@linaro.org
---
drivers/core/ofnode.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c
index 26e014d5c53..e040e3f2806 100644
--- a/drivers/core/ofnode.c
+++ b/drivers/core/ofnode.c
@@ -1961,6 +1961,12 @@ int ofnode_read_bootscript_flash(u64 *bootscr_flash_offset,
ofnode uboot;
*bootscr_flash_offset = 0;
+
+ if (!bootscr_flash_size) {
+ dm_warn("bootscr-flash-size is zero. Ignoring properties!\n");
+ return -EINVAL;
+ }
+
*bootscr_flash_size = 0;
uboot = ofnode_path("/options/u-boot");
@@ -1979,12 +1985,6 @@ int ofnode_read_bootscript_flash(u64 *bootscr_flash_offset,
if (ret)
return -EINVAL;
- if (!bootscr_flash_size) {
- dm_warn("bootscr-flash-size is zero. Ignoring properties!\n");
- *bootscr_flash_offset = 0;
- return -EINVAL;
- }
-
return 0;
}
---
base-commit: 7027b445cc0bfb86204ecb1f1fe596f5895048d9
change-id: 20250703-ofnode_fix-284e601e4329
Best regards,
--
Andrew Goodbody <andrew.goodbody at linaro.org>
More information about the U-Boot
mailing list