From: Suraj Kandpal <[email protected]> [ Upstream commit d34f4f058edf1235c103ca9c921dc54820d14d40 ]
Add encoder check in intel_hdcp2_get_capability to avoid null pointer error. [ Backport to 6.6.y: this tree predates the later intel_connector conversion, so the unsafe intel_attached_dig_port() call is still in intel_hdcp2_capable() rather than the DP and HDMI shims. Put the same encoder guard before that common dereference and return false through the bool API when no encoder is attached. ] Signed-off-by: Suraj Kandpal <[email protected]> Reviewed-by: Dnyaneshwar Bhadane <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] Assisted-by: LLM Signed-off-by: Artem Dinaburg <[email protected]> --- CVE: CVE-2024-53050 Upstream: d34f4f058edf1235c103ca9c921dc54820d14d40 Backport: guard the common 6.6.y bool helper because the later DP/HDMI split is not present in this tree. Review: https://lore.kernel.org/r/2026-09-29-daily-reply-0012-re-i915-hdcp-encoder-check-v2-...@kernel.org drivers/gpu/drm/i915/display/intel_hdcp.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c b/drivers/gpu/drm/i915/display/intel_hdcp.c index f7987fb90bb1..89e378f71d67 100644 --- a/drivers/gpu/drm/i915/display/intel_hdcp.c +++ b/drivers/gpu/drm/i915/display/intel_hdcp.c @@ -168,11 +168,16 @@ bool intel_hdcp_capable(struct intel_connector *connector) /* Is HDCP2.2 capable on Platform and Sink */ bool intel_hdcp2_capable(struct intel_connector *connector) { - struct intel_digital_port *dig_port = intel_attached_dig_port(connector); + struct intel_digital_port *dig_port; struct drm_i915_private *i915 = to_i915(connector->base.dev); struct intel_hdcp *hdcp = &connector->hdcp; bool capable = false; + if (!intel_attached_encoder(connector)) + return capable; + + dig_port = intel_attached_dig_port(connector); + /* I915 support for HDCP2.2 */ if (!hdcp->hdcp2_supported) return false; -- 2.39.5
