diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c b/drivers/gpu/drm/i915/display/intel_hdcp.c index ebc2e32aec0b..cc159d926145 100644 --- a/drivers/gpu/drm/i915/display/intel_hdcp.c +++ b/drivers/gpu/drm/i915/display/intel_hdcp.c @@ -89,6 +89,9 @@ intel_hdcp_required_content_stream(struct intel_digital_port *dig_port) if (!enforce_type0 && !intel_streams_type1_capable(connector)) enforce_type0 = true; + if (drm_WARN_ON(&i915->drm, data->k >= INTEL_NUM_PIPES(i915))) + return -EINVAL; + data->streams[data->k].stream_id = intel_conn_to_vcpi(connector); data->k++; @@ -98,7 +101,7 @@ intel_hdcp_required_content_stream(struct intel_digital_port *dig_port) } drm_connector_list_iter_end(&conn_iter); - if (drm_WARN_ON(&i915->drm, data->k > INTEL_NUM_PIPES(i915) || data->k == 0)) + if (drm_WARN_ON(&i915->drm, !data->k)) return -EINVAL; /*