linux/drivers/of
Ma Ke a8de554774 of: unittest: Fix device reference count leak in of_unittest_pci_node_verify
In of_unittest_pci_node_verify(), when the add parameter is false,
device_find_any_child() obtains a reference to a child device. This
function implicitly calls get_device() to increment the device's
reference count before returning the pointer. However, the caller
fails to properly release this reference by calling put_device(),
leading to a device reference count leak. Add put_device() in the else
branch immediately after child_dev is no longer needed.

As the comment of device_find_any_child states: "NOTE: you will need
to drop the reference with put_device() after use".

Found by code review.

Cc: stable@vger.kernel.org
Fixes: 26409dd045 ("of: unittest: Add pci_dt_testdrv pci driver")
Signed-off-by: Ma Ke <make24@iscas.ac.cn>
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2025-10-01 09:33:23 -05:00
..
unittest-data samples: rust: platform: Add property child and reference args examples 2025-06-25 17:48:41 +02:00
.kunitconfig of: Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n 2024-11-15 14:03:28 -06:00
address.c Devicetree for v6.15: 2025-03-29 11:23:16 -07:00
base.c Devicetree for v6.15: 2025-03-29 11:23:16 -07:00
cpu.c of: Constify struct device_node function arguments 2024-10-15 08:58:36 -05:00
device.c of: Simplify of_dma_set_restricted_buffer() to use of_for_each_phandle() 2025-05-05 16:18:05 -05:00
dynamic.c of: dynamic: Add of_changeset_update_prop_string 2024-11-27 12:03:48 +01:00
empty_root.dts of: Add #address-cells/#size-cells in the device-tree root empty node 2024-12-02 09:26:33 -06:00
fdt.c arm64: add KHO support 2025-05-12 23:50:41 -07:00
fdt_address.c of: Remove a duplicated code block 2025-01-13 08:39:28 -06:00
irq.c of: doc: Fix typo in doc comments. 2025-10-01 07:55:42 -05:00
Kconfig Kbuild updates for v6.13 2024-11-30 13:41:50 -08:00
kexec.c arm64: add KHO support 2025-05-12 23:50:41 -07:00
kobj.c sysfs: treewide: switch back to bin_attribute::read()/write() 2025-06-17 10:44:13 +02:00
kunit_overlay_test.dtso of: Add a KUnit test for overlays and test managed APIs 2024-07-29 15:33:12 -07:00
Makefile of: Add a KUnit test for overlays and test managed APIs 2024-07-29 15:33:12 -07:00
module.c of: module: remove strlen() call in of_modalias() 2024-10-16 12:00:10 -05:00
of_kunit_helpers.c of: Skip kunit tests when arm64+ACPI doesn't populate root node 2024-10-10 12:43:01 -05:00
of_numa.c of:of_numa: remove unused macro 2024-10-08 09:47:30 -05:00
of_private.h Devicetree for v6.15: 2025-03-29 11:23:16 -07:00
of_reserved_mem.c of: reserved_mem: Add functions to parse "memory-region" 2025-05-05 16:17:40 -05:00
of_test.c of: address: Add kunit test for __of_address_resource_bounds() 2025-02-02 20:59:04 -06:00
overlay.c of: doc: Fix typo in doc comments. 2025-10-01 07:55:42 -05:00
overlay_test.c of: Allow overlay kunit tests to run CONFIG_OF_OVERLAY=n 2024-11-15 14:03:28 -06:00
pdt.c of: Do not expose of_alias_scan() and correct its comments 2025-01-17 08:52:57 -06:00
platform.c of/platform: Use typed accessors rather than of_get_property() 2025-03-14 18:01:42 -05:00
property.c of: Add of_property_read_u16_index 2025-03-20 12:42:27 +00:00
resolver.c of: Introduce and apply private is_pseudo_property() 2025-02-25 08:43:00 -06:00
unittest.c of: unittest: Fix device reference count leak in of_unittest_pci_node_verify 2025-10-01 09:33:23 -05:00