[PATCH] libfdt: Remove superfluous NUL character from overlay symbols

The symbol path already ends with a NUL character (something which is actually checked by the code) and this NUL is included in rel_path_len, so there is no need to add a second one.
This change fixes incorrect display in "fdt list /__symbols" after applying an overlay with symbols.
Signed-off-by: Marcus Comstedt marcus@mc.pp.se --- scripts/dtc/libfdt/fdt_overlay.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/scripts/dtc/libfdt/fdt_overlay.c b/scripts/dtc/libfdt/fdt_overlay.c index c090e6991e..bd75e3dd78 100644 --- a/scripts/dtc/libfdt/fdt_overlay.c +++ b/scripts/dtc/libfdt/fdt_overlay.c @@ -757,7 +757,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) && (memcmp(s, "/__overlay__", len - 1) == 0)) { /* /<fragment-name>/__overlay__ */ rel_path = ""; - rel_path_len = 0; + rel_path_len = 1; /* Include NUL character */ } else { /* Symbol refers to something that won't end * up in the target tree */ @@ -794,7 +794,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) }
ret = fdt_setprop_placeholder(fdt, root_sym, name, - len + (len > 1) + rel_path_len + 1, &p); + len + (len > 1) + rel_path_len, &p); if (ret < 0) return ret;
@@ -820,7 +820,6 @@ static int overlay_symbol_update(void *fdt, void *fdto)
buf[len] = '/'; memcpy(buf + len + 1, rel_path, rel_path_len); - buf[len + 1 + rel_path_len] = '\0'; }
return 0;

Hi Marcus,
On Fri, 22 May 2020 at 10:42, Marcus Comstedt marcus@mc.pp.se wrote:
The symbol path already ends with a NUL character (something which is actually checked by the code) and this NUL is included in rel_path_len, so there is no need to add a second one.
This change fixes incorrect display in "fdt list /__symbols" after applying an overlay with symbols.
Signed-off-by: Marcus Comstedt marcus@mc.pp.se
scripts/dtc/libfdt/fdt_overlay.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
Could you please send this patch upstream?
diff --git a/scripts/dtc/libfdt/fdt_overlay.c b/scripts/dtc/libfdt/fdt_overlay.c index c090e6991e..bd75e3dd78 100644 --- a/scripts/dtc/libfdt/fdt_overlay.c +++ b/scripts/dtc/libfdt/fdt_overlay.c @@ -757,7 +757,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) && (memcmp(s, "/__overlay__", len - 1) == 0)) { /* /<fragment-name>/__overlay__ */ rel_path = "";
rel_path_len = 0;
rel_path_len = 1; /* Include NUL character */ } else { /* Symbol refers to something that won't end * up in the target tree */
@@ -794,7 +794,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) }
ret = fdt_setprop_placeholder(fdt, root_sym, name,
len + (len > 1) + rel_path_len + 1, &p);
len + (len > 1) + rel_path_len, &p); if (ret < 0) return ret;
@@ -820,7 +820,6 @@ static int overlay_symbol_update(void *fdt, void *fdto)
buf[len] = '/'; memcpy(buf + len + 1, rel_path, rel_path_len);
buf[len + 1 + rel_path_len] = '\0'; } return 0;
-- 2.26.2
Regards, Simon

Hi Simon,
Simon Glass sjg@chromium.org writes:
Could you please send this patch upstream?
Sure. But where is that, exactly?
// Marcus

+Devicetree Compiler
On Sat, 23 May 2020 at 05:57, Marcus Comstedt marcus@mc.pp.se wrote:
Hi Simon,
Simon Glass sjg@chromium.org writes:
Could you please send this patch upstream?
Sure. But where is that, exactly?
// Marcus
Hi Marcus,
You can send your patch to the mailing list on cc.
Also see README.fdt-control fo the the git repo and other details.
Regards, Simon

Hi Simon,
Simon Glass sjg@chromium.org writes:
You can send your patch to the mailing list on cc.
Also see README.fdt-control fo the the git repo and other details.
Thanks. Sent.
// Marcus

On Sat, 23 May 2020 at 09:13, Marcus Comstedt marcus@mc.pp.se wrote:
Hi Simon,
Simon Glass sjg@chromium.org writes:
You can send your patch to the mailing list on cc.
Also see README.fdt-control fo the the git repo and other details.
Thanks. Sent.
// Marcus
Reviewed-by: Simon Glass sjg@chromium.org

On Sat, 23 May 2020 at 09:13, Marcus Comstedt marcus@mc.pp.se wrote:
Hi Simon,
Simon Glass sjg@chromium.org writes:
You can send your patch to the mailing list on cc.
Also see README.fdt-control fo the the git repo and other details.
Thanks. Sent.
// Marcus
Reviewed-by: Simon Glass sjg@chromium.org
Applied to u-boot-dm, thanks!
participants (3)
-
Marcus Comstedt
-
Simon Glass
-
sjg@google.com