⬢ DragonFlyBSD Kernel Audit
DF-3870 / fix.diff
← back to finding ↓ download raw
--- a/sys/dev/drm/amd/display/dc/calcs/dce_calcs.c
+++ b/sys/dev/drm/amd/display/dc/calcs/dce_calcs.c
@@ -2038,7 +2038,9 @@ void bw_calcs_init(struct bw_calcs_dceip *bw_dceip,
 	case BW_CALCS_VERSION_CARRIZO:
 		vbios.memory_type = bw_def_gddr5;
 		vbios.dram_channel_width_in_bits = 64;
-		vbios.number_of_dram_channels = asic_id.vram_width / vbios.dram_channel_width_in_bits;
+		vbios.number_of_dram_channels =
+			max(1u, asic_id.vram_width / vbios.dram_channel_width_in_bits);
 		vbios.number_of_dram_banks = 8;
(the same clamp applies at lines 2157, 2270, 2386, 2502 and 2615)