OSDN Git Service

drm/amd: Fix an out of bounds error in BIOS parser
authorMario Limonciello <mario.limonciello@amd.com>
Thu, 23 Mar 2023 19:07:06 +0000 (14:07 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 11 Apr 2023 22:03:43 +0000 (18:03 -0400)
commitd116db180decec1b21bba31d2ff495ac4d8e1b83
tree6bfc0b57fd6548477ce1d17e74ea87bb3e1b2985
parent9dce8c2a5f1bf5a304aae39342816f099247d7da
drm/amd: Fix an out of bounds error in BIOS parser

The array is hardcoded to 8 in atomfirmware.h, but firmware provides
a bigger one sometimes. Deferencing the larger array causes an out
of bounds error.

commit 4fc1ba4aa589 ("drm/amd/display: fix array index out of bound error
in bios parser") fixed some of this, but there are two other cases
not covered by it.  Fix those as well.

Reported-by: erhard_f@mailbox.org
Link: https://bugzilla.kernel.org/show_bug.cgi?id=214853
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2473
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c