From: jsg Date: Fri, 11 Oct 2024 02:26:49 +0000 (+0000) Subject: drm/amd/display: Fix index out of bounds in DCN30 degamma hardware format translation X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=e5386f85f3b726ebd7ff1c6f99ae76b1796e3cf0;p=openbsd drm/amd/display: Fix index out of bounds in DCN30 degamma hardware format translation From Srinivasan Shanmugam 0d38a0751143afc03faef02d55d31f70374ff843 in linux-6.6.y/6.6.55 bc50b614d59990747dd5aeced9ec22f9258991ff in mainline linux --- diff --git a/sys/dev/pci/drm/amd/display/dc/dcn30/dcn30_cm_common.c b/sys/dev/pci/drm/amd/display/dc/dcn30/dcn30_cm_common.c index e0df9b0065f..e0b1fc92ed1 100644 --- a/sys/dev/pci/drm/amd/display/dc/dcn30/dcn30_cm_common.c +++ b/sys/dev/pci/drm/amd/display/dc/dcn30/dcn30_cm_common.c @@ -355,6 +355,8 @@ bool cm3_helper_translate_curve_to_degamma_hw_format( i += increment) { if (j == hw_points - 1) break; + if (i >= TRANSFER_FUNC_POINTS) + return false; rgb_resulted[j].red = output_tf->tf_pts.red[i]; rgb_resulted[j].green = output_tf->tf_pts.green[i]; rgb_resulted[j].blue = output_tf->tf_pts.blue[i];