mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 01:10:04 +00:00
device property: Fix fwnode_graph_devcon_match() fwnode leak
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: 637e9e52b1
("device connection: Find device connections also from device graphs")
Cc: 5.1+ <stable@vger.kernel.org> # 5.1+
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
2338e7bcef
commit
4a7f4110f7
1 changed files with 3 additions and 1 deletions
|
@ -1158,8 +1158,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);
|
||||
|
|
Loading…
Reference in a new issue