fdt_find_or_add_memory() returns >= 0 on success, so the return must be checked to be < 0. Also fix the following pr_warn() which used the wrong variable.
Signed-off-by: Marco Felsch <[email protected]> --- pbl/fdt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pbl/fdt.c b/pbl/fdt.c index c9820112c6442b65d4f462c93b6847442097c5ab..ac377446caeafb1beaeb211aa8bdec8767ae21fe 100644 --- a/pbl/fdt.c +++ b/pbl/fdt.c @@ -128,9 +128,9 @@ int fdt_fixup_mem(void *fdt, unsigned long membase[], unsigned long memsize[], snprintf(name, sizeof(name), "memory@%lx", base); node = fdt_find_or_add_memory(fdt, root, name); - if (!node) { + if (node < 0) { pr_warn("%s: Failed to get node: %s\n", - name, fdt_strerror(err)); + name, fdt_strerror(node)); continue; } -- 2.47.3
