Hi Hangyu Don't know why but our CI still did not caught this patch. Maybe it is because intel-gfx@xxxxxxxxxxxxxxxxxxxxx needs to be in the "to" list, try that in future patches. Anyways I have resend it and it is properly behaving now. https://patchwork.freedesktop.org/series/105601/ After CI results I will push this for you. On Fri, 2022-06-24 at 10:28 +0800, Hangyu Hua wrote: > If drm_connector_init fails, intel_connector_free will be called to take > care of proper free. So it is necessary to drop the refcount of port > before intel_connector_free. > > Fixes: 091a4f91942a ("drm/i915: Handle drm-layer errors in intel_dp_add_mst_connector") > Signed-off-by: Hangyu Hua <hbh25y@xxxxxxxxx> > Reviewed-by: José Roberto de Souza <jose.souza@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_dp_mst.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c > index 061b277e5ce7..14d2a64193b2 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c > +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c > @@ -839,6 +839,7 @@ static struct drm_connector *intel_dp_add_mst_connector(struct drm_dp_mst_topolo > ret = drm_connector_init(dev, connector, &intel_dp_mst_connector_funcs, > DRM_MODE_CONNECTOR_DisplayPort); > if (ret) { > + drm_dp_mst_put_port_malloc(port); > intel_connector_free(intel_connector); > return NULL; > }