Commit 40d7299c authored by Srinivasan Shanmugam's avatar Srinivasan Shanmugam Committed by Alex Deucher
Browse files

drm/amd/display: Ensure HPD source index is valid for dcn20/dcn201 link encoders



This patch adds a boundary check for the hpd_source index during the
link encoder creation process for dcn20/dcn201 IP's. The check ensures
that the index is within the valid range of the link_enc_hpd_regs array
to prevent out-of-bounds access.

Cc: Tom Chung <chiahsuan.chung@amd.com>
Cc: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Cc: Roman Li <roman.li@amd.com>
Cc: Alex Hung <alex.hung@amd.com>
Cc: Aurabindo Pillai <aurabindo.pillai@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: default avatarSrinivasan Shanmugam <srinivasan.shanmugam@amd.com>
Reviewed-by: default avatarRoman Li <roman.li@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent df9174ef
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -920,7 +920,7 @@ struct link_encoder *dcn20_link_encoder_create(
		kzalloc(sizeof(struct dcn20_link_encoder), GFP_KERNEL);
	int link_regs_id;

	if (!enc20)
	if (!enc20 || enc_init_data->hpd_source >= ARRAY_SIZE(link_enc_hpd_regs))
		return NULL;

	link_regs_id =
+1 −1
Original line number Diff line number Diff line
@@ -797,7 +797,7 @@ static struct link_encoder *dcn201_link_encoder_create(
		kzalloc(sizeof(struct dcn20_link_encoder), GFP_ATOMIC);
	struct dcn10_link_encoder *enc10;

	if (!enc20)
	if (!enc20 || enc_init_data->hpd_source >= ARRAY_SIZE(link_enc_hpd_regs))
		return NULL;

	enc10 = &enc20->enc10;