linux/drivers/of/unittest-data
Christian A. Ehrhardt b9d760dae5 of: Fix double free in of_parse_phandle_with_args_map
[ Upstream commit 4dde835698 ]

In of_parse_phandle_with_args_map() the inner loop that
iterates through the map entries calls of_node_put(new)
to free the reference acquired by the previous iteration
of the inner loop. This assumes that the value of "new" is
NULL on the first iteration of the inner loop.

Make sure that this is true in all iterations of the outer
loop by setting "new" to NULL after its value is assigned to "cur".

Extend the unittest to detect the double free and add an additional
test case that actually triggers this path.

Fixes: bd6f2fd5a1 ("of: Support parsing phandle argument lists through a nexus node")
Cc: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: "Christian A. Ehrhardt" <lk@c--e.de>
Link: https://lore.kernel.org/r/20231229105411.1603434-1-lk@c--e.de
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-01-25 15:27:38 -08:00
..
Makefile of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_0.dts of: change overlay apply input data from unflattened to FDT 2018-03-04 00:29:24 -08:00
overlay_1.dts of: change overlay apply input data from unflattened to FDT 2018-03-04 00:29:24 -08:00
overlay_2.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_3.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_4.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_5.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_6.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_7.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_8.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_9.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_10.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_11.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_12.dts of: change overlay apply input data from unflattened to FDT 2018-03-04 00:29:24 -08:00
overlay_13.dts of: change overlay apply input data from unflattened to FDT 2018-03-04 00:29:24 -08:00
overlay_15.dts of/unittest: Fix I2C bus unit-address error 2018-09-19 15:10:06 -07:00
overlay_16.dts of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay_17.dts of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay_18.dts of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay_19.dts of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay_20.dts of: overlay: unittest: add tests for overlay notifiers 2022-05-03 11:53:15 -05:00
overlay_bad_add_dup_node.dts of: overlay: test case of two fragments adding same node 2018-11-08 22:11:51 -08:00
overlay_bad_add_dup_prop.dts of: unittest: kmemleak in duplicate property update 2020-04-17 08:31:34 -05:00
overlay_bad_phandle.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_bad_symbol.dts of: convert unittest overlay devicetree source to sugar syntax 2018-03-04 00:29:34 -08:00
overlay_base.dts of: unittest: Create overlay_common.dtsi and testcases_common.dtsi 2021-03-23 15:27:51 -06:00
overlay_common.dtsi of: unittest: Create overlay_common.dtsi and testcases_common.dtsi 2021-03-23 15:27:51 -06:00
overlay_gpio_01.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
overlay_gpio_02a.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
overlay_gpio_02b.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
overlay_gpio_03.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
overlay_gpio_04a.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
overlay_gpio_04b.dts of: unittest: add overlay gpio test to catch gpio hog problem 2020-02-26 10:42:04 -06:00
static_base_1.dts of: unittest: Statically apply overlays using fdtoverlay 2021-03-23 15:27:51 -06:00
static_base_2.dts of: unittest: Statically apply overlays using fdtoverlay 2021-03-23 15:27:51 -06:00
testcases.dts of: unittest: Create overlay_common.dtsi and testcases_common.dtsi 2021-03-23 15:27:51 -06:00
testcases_common.dtsi of: unittest: Create overlay_common.dtsi and testcases_common.dtsi 2021-03-23 15:27:51 -06:00
tests-address.dtsi of: unittest: Use bigger address cells to catch parser regressions 2020-08-03 16:24:49 -06:00
tests-interrupts.dtsi of: unittest: document intentional interrupt-map provider build warning 2021-11-01 20:33:56 -05:00
tests-match.dtsi License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tests-overlay.dtsi of/unittest: Fix I2C bus unit-address error 2018-09-19 15:10:06 -07:00
tests-phandle.dtsi of: Fix double free in of_parse_phandle_with_args_map 2024-01-25 15:27:38 -08:00
tests-platform.dtsi License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00