mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-07 18:05:21 +02:00
drm/amd/display: Check index for aux_rd_interval before using
[ Upstream commit 9ba2ea6337
]
aux_rd_interval has size of 7 and should be checked.
This fixes 3 OVERRUN and 1 INTEGER_OVERFLOW issues reported by Coverity.
Reviewed-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Acked-by: Tom Chung <chiahsuan.chung@amd.com>
Signed-off-by: Alex Hung <alex.hung@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
94cb77700f
commit
48e0b68e23
|
@ -914,10 +914,10 @@ static enum dc_status configure_lttpr_mode_non_transparent(
|
||||||
/* Driver does not need to train the first hop. Skip DPCD read and clear
|
/* Driver does not need to train the first hop. Skip DPCD read and clear
|
||||||
* AUX_RD_INTERVAL for DPTX-to-DPIA hop.
|
* AUX_RD_INTERVAL for DPTX-to-DPIA hop.
|
||||||
*/
|
*/
|
||||||
if (link->ep_type == DISPLAY_ENDPOINT_USB4_DPIA)
|
if (link->ep_type == DISPLAY_ENDPOINT_USB4_DPIA && repeater_cnt > 0 && repeater_cnt < MAX_REPEATER_CNT)
|
||||||
link->dpcd_caps.lttpr_caps.aux_rd_interval[--repeater_cnt] = 0;
|
link->dpcd_caps.lttpr_caps.aux_rd_interval[--repeater_cnt] = 0;
|
||||||
|
|
||||||
for (repeater_id = repeater_cnt; repeater_id > 0; repeater_id--) {
|
for (repeater_id = repeater_cnt; repeater_id > 0 && repeater_id < MAX_REPEATER_CNT; repeater_id--) {
|
||||||
aux_interval_address = DP_TRAINING_AUX_RD_INTERVAL_PHY_REPEATER1 +
|
aux_interval_address = DP_TRAINING_AUX_RD_INTERVAL_PHY_REPEATER1 +
|
||||||
((DP_REPEATER_CONFIGURATION_AND_STATUS_SIZE) * (repeater_id - 1));
|
((DP_REPEATER_CONFIGURATION_AND_STATUS_SIZE) * (repeater_id - 1));
|
||||||
core_link_read_dpcd(
|
core_link_read_dpcd(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user