]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
of: reserved-memory: Warn for missing static reserved memory regions
authorZijun Hu <quic_zijuhu@quicinc.com>
Tue, 14 Jan 2025 15:23:04 +0000 (23:23 +0800)
committerRob Herring (Arm) <robh@kernel.org>
Fri, 17 Jan 2025 14:52:57 +0000 (08:52 -0600)
For child node of /reserved-memory, its property 'reg' may contain
multiple regions, but fdt_scan_reserved_mem_reg_nodes() only takes
into account the first region, and miss remaining regions.

But there are no simple approach to fix it, so give user warning
message when miss remaining regions.

Fixes: 8a6e02d0c00e ("of: reserved_mem: Restructure how the reserved memory regions are processed")
Cc: stable@vger.kernel.org
Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://lore.kernel.org/r/20250114-of_core_fix-v5-2-b8bafd00a86f@quicinc.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
drivers/of/of_reserved_mem.c

index 17c57118c4960d8ac502add1904f7f464258f5a1..75e819f66a56139a800dba5e2e0044d0bbeb065e 100644 (file)
@@ -263,6 +263,11 @@ void __init fdt_scan_reserved_mem_reg_nodes(void)
                               uname);
                        continue;
                }
+
+               if (len > t_len)
+                       pr_warn("%s() ignores %d regions in node '%s'\n",
+                               __func__, len / t_len - 1, uname);
+
                base = dt_mem_next_cell(dt_root_addr_cells, &prop);
                size = dt_mem_next_cell(dt_root_size_cells, &prop);