On Tue, Nov 30, 2021 at 05:32:44PM +0200, Sakari Ailus wrote: > 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. I like the series, thanks! For non-commented you may take my Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> The rest can gain it if you are okay with my proposals. Also, please fix Cc list, it has fancy address in the Cc list. > Fixes: 637e9e52b185 ("device connection: Find device connections also from device graphs") > Cc: stable@xxxxxxxxxxxxxxx # for 5.1 and later > Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> > --- > 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 > -- With Best Regards, Andy Shevchenko