CVE-2024-36969

drm/amd/display: Fix division by zero in setup_dsc_config

published June 8, 2024

CVSS
—
EPSS
0%
Percentile
11.0
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

drm/amd/display: Fix division by zero in setup_dsc_config

When slice_height is 0, the division by slice_height in the calculation

of the number of slices will cause a division by zero driver crash. This

leaves the kernel in a state that requires a reboot. This patch adds a

check to avoid the division by zero.

The stack trace below is for the 6.8.4 Kernel. I reproduced the issue on

a Z16 Gen 2 Lenovo Thinkpad with a Apple Studio Display monitor

connected via Thunderbolt. The amdgpu driver crashed with this exception

when I rebooted the system with the monitor connected.

kernel: ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447)

kernel: ? do_trap (arch/x86/kernel/traps.c:113 arch/x86/kernel/traps.c:154)

kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu

kernel: ? do_error_trap (./arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:175)

kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu

kernel: ? exc_divide_error (arch/x86/kernel/traps.c:194 (discriminator 2))

kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu

kernel: ? asm_exc_divide_error (./arch/x86/include/asm/idtentry.h:548)

kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu

kernel: dc_dsc_compute_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1109) amdgpu

After applying this patch, the driver no longer crashes when the monitor

is connected and the system is rebooted. I believe this is the same

issue reported for 3113.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00213 · 11.0th percentile
Published
2024-06-08T12:53Z
EPSS history
Timeline
  • 08 JUN 12:53Z
    drm/amd/display: Fix division by zero in setup_dsc_config
    cvelistv5