[-next] drm/i915: fix possible memory leak in intel_hdcp_auth_downstream()
diff mbox series

Message ID 20190704104534.12508-1-weiyongjun1@huawei.com
State New
Headers show
Series
  • [-next] drm/i915: fix possible memory leak in intel_hdcp_auth_downstream()
Related show

Commit Message

Wei Yongjun July 4, 2019, 10:45 a.m. UTC
'ksv_fifo' is malloced in intel_hdcp_auth_downstream() and should be
freed before leaving from the error handling cases, otherwise it will
cause memory leak.

Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
 drivers/gpu/drm/i915/display/intel_hdcp.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Jani Nikula Aug. 1, 2019, 10:18 a.m. UTC | #1
On Thu, 04 Jul 2019, Wei Yongjun <weiyongjun1@huawei.com> wrote:
> 'ksv_fifo' is malloced in intel_hdcp_auth_downstream() and should be
> freed before leaving from the error handling cases, otherwise it will
> cause memory leak.


Thanks for the patch, sorry for the delay, pushed to
drm-intel-next-queued.

BR,
Jani.

>
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
> ---
>  drivers/gpu/drm/i915/display/intel_hdcp.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c b/drivers/gpu/drm/i915/display/intel_hdcp.c
> index bc3a94d491c4..27bd7276a82d 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdcp.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
> @@ -536,7 +536,8 @@ int intel_hdcp_auth_downstream(struct intel_connector *connector)
>  
>  	if (drm_hdcp_check_ksvs_revoked(dev, ksv_fifo, num_downstream)) {
>  		DRM_ERROR("Revoked Ksv(s) in ksv_fifo\n");
> -		return -EPERM;
> +		ret = -EPERM;
> +		goto err;
>  	}
>  
>  	/*
>
>
>

Patch
diff mbox series

diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c b/drivers/gpu/drm/i915/display/intel_hdcp.c
index bc3a94d491c4..27bd7276a82d 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
@@ -536,7 +536,8 @@  int intel_hdcp_auth_downstream(struct intel_connector *connector)
 
 	if (drm_hdcp_check_ksvs_revoked(dev, ksv_fifo, num_downstream)) {
 		DRM_ERROR("Revoked Ksv(s) in ksv_fifo\n");
-		return -EPERM;
+		ret = -EPERM;
+		goto err;
 	}
 
 	/*