linux-uconsole/drivers/of
Frank Rowand 0773dcee66 of: overlay: add_changeset_property() memory leak
[ Upstream commit 637392a850 ]

No changeset entries are created for #address-cells and #size-cells
properties, but the duplicated properties are never freed.  This
results in a memory leak which is detected by kmemleak:

 unreferenced object 0x85887180 (size 64):
   backtrace:
     kmem_cache_alloc_trace+0x1fb/0x1fc
     __of_prop_dup+0x25/0x7c
     add_changeset_property+0x17f/0x370
     build_changeset_next_level+0x29/0x20c
     of_overlay_fdt_apply+0x32b/0x6b4
     ...

Fixes: 6f75118800 ("of: overlay: validate overlay properties #address-cells and #size-cells")
Reported-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Tested-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-17 20:35:56 +01:00
..
unittest-data of/unittest: Fix I2C bus unit-address error 2019-11-20 18:47:00 +01:00
address.c drivers/of: Make of_io_request_and_map() "name" argument optional 2018-07-10 08:08:57 -06:00
base.c of: make PowerMac cache node search conditional on CONFIG_PPC_PMAC 2019-11-20 18:46:06 +01:00
device.c of: Convert to using %pOFn instead of device_node.name 2019-02-06 17:30:15 +01:00
dynamic.c of: overlay: set node fields from properties when add new overlay node 2019-06-09 09:17:24 +02:00
fdt.c of/fdt: Remove PPC32 longtrail hack in memory scan 2018-08-07 12:05:54 -06:00
fdt_address.c
irq.c
Kconfig
kobj.c of: overlay: add missing of_node_get() in __of_attach_node_sysfs 2019-02-06 17:30:15 +01:00
Makefile
of_mdio.c of: Convert to using %pOFn instead of device_node.name 2019-02-06 17:30:15 +01:00
of_net.c
of_numa.c of: Convert to using %pOFn instead of device_node.name 2019-02-06 17:30:15 +01:00
of_private.h of: __of_detach_node() - remove node from phandle cache 2019-01-13 09:51:10 +01:00
of_reserved_mem.c
overlay.c of: overlay: add_changeset_property() memory leak 2019-12-17 20:35:56 +01:00
pdt.c
platform.c of: Convert to using %pOFn instead of device_node.name 2019-02-06 17:30:15 +01:00
property.c OF: properties: add missing of_node_put 2019-01-22 21:40:33 +01:00
resolver.c
unittest.c of: unittest: initialize args before calling of_*parse_*() 2019-12-01 09:17:30 +01:00