All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Imre Deak <imre.deak@intel.com>, intel-gfx@lists.freedesktop.org
Cc: dri-devel@lists.freedesktop.org, Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: Re: [PATCH v3 10/11] drm/i915/dp_mst: Fix error handling while adding a connector
Date: Thu, 12 Dec 2024 12:16:34 +0200	[thread overview]
Message-ID: <87wmg5w6il.fsf@intel.com> (raw)
In-Reply-To: <20241211230328.4012496-11-imre.deak@intel.com>

On Thu, 12 Dec 2024, Imre Deak <imre.deak@intel.com> wrote:
> After an error during adding an MST connector the MST port and the
> intel_connector object could be leaked, fix this up.
>
> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Signed-off-by: Imre Deak <imre.deak@intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_dp_mst.c | 17 +++++++++--------
>  1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> index debe4d0eee11f..99f08e31fd6e0 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> @@ -1743,11 +1743,8 @@ mst_topology_add_connector(struct drm_dp_mst_topology_mgr *mgr,
>  
>  	ret = drm_connector_dynamic_init(display->drm, connector, &mst_connector_funcs,
>  					 DRM_MODE_CONNECTOR_DisplayPort, NULL);
> -	if (ret) {
> -		drm_dp_mst_put_port_malloc(port);
> -		intel_connector_free(intel_connector);
> -		return NULL;
> -	}
> +	if (ret)
> +		goto err_put_port;
>  
>  	intel_connector->dp.dsc_decompression_aux = drm_dp_mst_dsc_aux_for_port(port);
>  	intel_dp_mst_read_decompression_port_dsc_caps(intel_dp, intel_connector);
> @@ -1762,12 +1759,12 @@ mst_topology_add_connector(struct drm_dp_mst_topology_mgr *mgr,
>  
>  		ret = drm_connector_attach_encoder(&intel_connector->base, enc);
>  		if (ret)
> -			goto err;
> +			goto err_cleanup_connector;
>  	}
>  
>  	ret = mst_topology_add_connector_properties(intel_dp, connector, pathprop);
>  	if (ret)
> -		goto err;
> +		goto err_cleanup_connector;
>  
>  	ret = intel_dp_hdcp_init(dig_port, intel_connector);
>  	if (ret)
> @@ -1776,8 +1773,12 @@ mst_topology_add_connector(struct drm_dp_mst_topology_mgr *mgr,
>  
>  	return connector;
>  
> -err:
> +err_cleanup_connector:
>  	drm_connector_cleanup(connector);
> +err_put_port:
> +	drm_dp_mst_put_port_malloc(port);
> +	intel_connector_free(intel_connector);
> +
>  	return NULL;
>  }

-- 
Jani Nikula, Intel

  reply	other threads:[~2024-12-12 10:16 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-11 23:03 [PATCH v3 0/7] drm/connector: Expose only a properly inited connector Imre Deak
2024-12-11 23:03 ` [PATCH v3 01/11] drm/connector: Add a way to init/add a connector in separate steps Imre Deak
2024-12-12  0:33   ` Lyude Paul
2024-12-12 10:16     ` Simona Vetter
2024-12-12 10:04   ` Jani Nikula
2024-12-12 11:45     ` Imre Deak
2024-12-16 12:22   ` Maxime Ripard
2024-12-11 23:03 ` [PATCH v3 02/11] drm/connector: Add FIXME for GETRESOURCES ioctl wrt. uninited connectors Imre Deak
2024-12-12 10:06   ` Jani Nikula
2024-12-13 12:02     ` Imre Deak
2024-12-11 23:03 ` [PATCH v3 03/11] drm/connector: Add deprication notes for drm_connector_register/unregister Imre Deak
2024-12-12 10:10   ` Jani Nikula
2024-12-12 12:02     ` Imre Deak
2024-12-16 14:37       ` Simona Vetter
2024-12-11 23:03 ` [PATCH v3 04/11] drm/dp_mst: Register connectors via drm_connector_dynamic_register() Imre Deak
2024-12-12 10:12   ` Jani Nikula
2024-12-13 12:06     ` Imre Deak
2024-12-16 11:03       ` Jani Nikula
2024-12-16 12:14         ` Imre Deak
2024-12-16 12:23   ` Imre Deak
2024-12-17  8:02     ` Lin, Wayne
2024-12-11 23:03 ` [PATCH v3 05/11] drm/i915/dp_mst: Expose a connector to kernel users after it's properly initialized Imre Deak
2024-12-12 10:13   ` Jani Nikula
2024-12-11 23:03 ` [PATCH v3 06/11] drm/amd/dp_mst: " Imre Deak
2024-12-12 10:14   ` Jani Nikula
2024-12-16 12:45   ` Imre Deak
2024-12-16 18:26     ` Alex Deucher
2024-12-11 23:03 ` [PATCH v3 07/11] drm/nouveau/dp_mst: " Imre Deak
2024-12-12 10:14   ` Jani Nikula
2024-12-11 23:03 ` [PATCH v3 08/11] drm/connector: Warn if a connector is registered/added incorrectly Imre Deak
2024-12-12 10:15   ` Jani Nikula
2024-12-11 23:03 ` [PATCH v3 09/11] drm/tests: Add tests for drm_connector_dynamic_init()/register() Imre Deak
2024-12-16 12:22   ` Maxime Ripard
2024-12-11 23:03 ` [PATCH v3 10/11] drm/i915/dp_mst: Fix error handling while adding a connector Imre Deak
2024-12-12 10:16   ` Jani Nikula [this message]
2024-12-11 23:03 ` [PATCH v3 11/11] drm/i915/dp_mst: Use intel_connector vs. drm_connector pointer in intel_dp_mst.c Imre Deak
2024-12-12 10:25   ` Jani Nikula
2024-12-12 12:23     ` Imre Deak
2024-12-11 23:33 ` ✗ Fi.CI.CHECKPATCH: warning for drm/connector: Expose only a properly inited connector Patchwork
2024-12-11 23:33 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-12-11 23:57 ` ✓ i915.CI.BAT: success " Patchwork
2024-12-12  7:33 ` ✗ i915.CI.Full: failure " Patchwork
2024-12-13 15:41   ` Imre Deak
2024-12-16 12:22 ` [PATCH v3 0/7] " Imre Deak
2024-12-16 12:39   ` Maxime Ripard
2024-12-17 14:47 ` Imre Deak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wmg5w6il.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=imre.deak@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=rodrigo.vivi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.