of: overlay: do not duplicate properties from overlay for new nodes
authorFrank Rowand <frank.rowand@sony.com>
Fri, 5 Oct 2018 03:29:01 +0000 (20:29 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Feb 2019 16:30:16 +0000 (17:30 +0100)
commit 8814dc46bd9e347d4de55ec5bf8f16ea54470499 upstream.

When allocating a new node, add_changeset_node() was duplicating the
properties from the respective node in the overlay instead of
allocating a node with no properties.

When this patch is applied the errors reported by the devictree
unittest from patch "of: overlay: add tests to validate kfrees from
overlay removal" will no longer occur.  These error messages are of
the form:

   "OF: ERROR: ..."

and the unittest results will change from:

   ### dt-test ### end of unittest - 203 passed, 7 failed

to

   ### dt-test ### end of unittest - 210 passed, 0 failed

Tested-by: Alan Tull <atull@kernel.org>
Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/of/overlay.c

index 6fd8e6145e108fe07d90c590b665dbd97e022984..9808aae4621ad4ba4cbf69c3125066c9af3d6b82 100644 (file)
@@ -393,7 +393,7 @@ static int add_changeset_node(struct overlay_changeset *ovcs,
                        break;
 
        if (!tchild) {
-               tchild = __of_node_dup(node, node_kbasename);
+               tchild = __of_node_dup(NULL, node_kbasename);
                if (!tchild)
                        return -ENOMEM;