Commit 46a67c4d authored by Radhakrishna Sripada's avatar Radhakrishna Sripada Committed by Jani Nikula

drm/i915: Fix memory leak in intel_hdcp auth

Static code analysis tool reported memory leak in
intel_hdcp_auth_downstream. Fixing the memory leak.

v2: Rebase, move free to a cleanup label(Jani)

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Anusha Srivatsa <anusha.srivatsa@intel.com>
Signed-off-by: default avatarRadhakrishna Sripada <radhakrishna.sripada@intel.com>
Reviewed-by: default avatarAnusha Srivatsa <anusha.srivatsa@intel.com>
Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180404225957.7457-1-radhakrishna.sripada@intel.com
parent 40da1d31
...@@ -435,7 +435,7 @@ int intel_hdcp_auth_downstream(struct intel_digital_port *intel_dig_port, ...@@ -435,7 +435,7 @@ int intel_hdcp_auth_downstream(struct intel_digital_port *intel_dig_port,
ret = shim->read_ksv_fifo(intel_dig_port, num_downstream, ksv_fifo); ret = shim->read_ksv_fifo(intel_dig_port, num_downstream, ksv_fifo);
if (ret) if (ret)
return ret; goto err;
/* /*
* When V prime mismatches, DP Spec mandates re-read of * When V prime mismatches, DP Spec mandates re-read of
...@@ -451,12 +451,15 @@ int intel_hdcp_auth_downstream(struct intel_digital_port *intel_dig_port, ...@@ -451,12 +451,15 @@ int intel_hdcp_auth_downstream(struct intel_digital_port *intel_dig_port,
if (i == tries) { if (i == tries) {
DRM_ERROR("V Prime validation failed.(%d)\n", ret); DRM_ERROR("V Prime validation failed.(%d)\n", ret);
return ret; goto err;
} }
DRM_DEBUG_KMS("HDCP is enabled (%d downstream devices)\n", DRM_DEBUG_KMS("HDCP is enabled (%d downstream devices)\n",
num_downstream); num_downstream);
return 0; ret = 0;
err:
kfree(ksv_fifo);
return ret;
} }
/* Implements Part 1 of the HDCP authorization procedure */ /* Implements Part 1 of the HDCP authorization procedure */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment