[PATCH 5/9] drm/i915: Associate ACPI connector nodes with connector entries

Heikki Krogerus heikki.krogerus at linux.intel.com
Tue May 4 14:56:03 UTC 2021


Hi Andy,

> > +/* NOTE: The connector order must be final before this is called. */
> > +void intel_acpi_assign_connector_fwnodes(struct drm_i915_private *i915)
> > +{
> > +       struct drm_connector_list_iter conn_iter;
> > +       struct drm_device *drm_dev = &i915->drm;
> > +       struct device *kdev = &drm_dev->pdev->dev;
> > +       struct fwnode_handle *fwnode = NULL;
> > +       struct drm_connector *connector;
> > +       struct acpi_device *adev;
> > +
> > +       drm_connector_list_iter_begin(drm_dev, &conn_iter);
> > +       drm_for_each_connector_iter(connector, &conn_iter) {
> > +               /* Always getting the next, even when the last was not
> > used. */
> > +               fwnode = device_get_next_child_node(kdev, fwnode);
> > +               if (!fwnode)
> > +                       break;
> 
> Who is dropping reference counting on fwnode ?
> 
> I’m in the middle of a pile of fixes for fwnode refcounting when
> for_each_child or get_next_child is used. So, please double check you drop
> a reference.

Sorry Andy. This patch is from time before the software nodes
implementation of the get_next_child callback handled the ref counting
properly.

Br,

-- 
heikki


More information about the dri-devel mailing list