All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/7] device property: Fix fwnode_graph_devcon_match() fwnode leak
@ 2021-11-30 15:32 Sakari Ailus
  2021-11-30 15:32 ` [PATCH 2/7] device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED Sakari Ailus
                   ` (6 more replies)
  0 siblings, 7 replies; 17+ messages in thread
From: Sakari Ailus @ 2021-11-30 15:32 UTC (permalink / raw)
  To: linux-acpi
  Cc: andriy.shevchenko, heikki.krogerus, rafael,
	/tmp/small/0000-cover-letter.patch

For each endpoint it encounters, fwnode_graph_devcon_match() checks
whether the endpoint's remote port parent device is available. If it is
not, it ignores the endpoint but does not put the reference to the remote
endpoint port parent fwnode. For available devices the fwnode handle
reference is put as expected.

Put the reference for unavailable devices now.

Fixes: 637e9e52b185 ("device connection: Find device connections also from device graphs")
Cc: stable@vger.kernel.org # for 5.1 and later
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
---
 drivers/base/property.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/base/property.c b/drivers/base/property.c
index f1f35b48ab8b9..6df99e526ab0f 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -1206,8 +1206,10 @@ fwnode_graph_devcon_match(struct fwnode_handle *fwnode, const char *con_id,
 
 	fwnode_graph_for_each_endpoint(fwnode, ep) {
 		node = fwnode_graph_get_remote_port_parent(ep);
-		if (!fwnode_device_is_available(node))
+		if (!fwnode_device_is_available(node)) {
+			fwnode_handle_put(node);
 			continue;
+		}
 
 		ret = match(node, con_id, data);
 		fwnode_handle_put(node);
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2021-12-01 13:19 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-30 15:32 [PATCH 1/7] device property: Fix fwnode_graph_devcon_match() fwnode leak Sakari Ailus
2021-11-30 15:32 ` [PATCH 2/7] device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED Sakari Ailus
2021-11-30 15:32 ` [PATCH 3/7] Documentation: ACPI: Fix data node reference documentation Sakari Ailus
2021-11-30 15:55   ` Andy Shevchenko
2021-11-30 20:42     ` Sakari Ailus
2021-11-30 20:50       ` Rafael J. Wysocki
2021-11-30 15:32 ` [PATCH 4/7] Documentation: ACPI: Update references Sakari Ailus
2021-11-30 15:57   ` Andy Shevchenko
2021-11-30 15:32 ` [PATCH 5/7] device property: Implement fwnode_graph_get_endpoint_count() Sakari Ailus
2021-11-30 16:01   ` Andy Shevchenko
2021-11-30 15:32 ` [PATCH 6/7] device property: Use fwnode_graph_for_each_endpoint() macro Sakari Ailus
2021-11-30 15:32 ` [PATCH 7/7] device property: Drop fwnode_graph_get_remote_node() Sakari Ailus
2021-11-30 16:05   ` Andy Shevchenko
2021-11-30 20:40     ` Sakari Ailus
2021-11-30 16:07 ` [PATCH 1/7] device property: Fix fwnode_graph_devcon_match() fwnode leak Andy Shevchenko
2021-11-30 20:21   ` Sakari Ailus
2021-12-01 13:19   ` Sakari Ailus

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.