DF-1432 / fix.diff
diff --git a/sys/dev/drm/radeon/radeon_display.c b/sys/dev/drm/radeon/radeon_display.c --- a/sys/dev/drm/radeon/radeon_display.c +++ b/sys/dev/drm/radeon/radeon_display.c @@ -810,27 +810,27 @@ devices = radeon_encoder->devices & radeon_connector->devices; if (devices) { if (devices & ATOM_DEVICE_CRT1_SUPPORT) - DRM_INFO(" CRT1: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" CRT1: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_CRT2_SUPPORT) - DRM_INFO(" CRT2: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" CRT2: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_LCD1_SUPPORT) - DRM_INFO(" LCD1: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" LCD1: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP1_SUPPORT) - DRM_INFO(" DFP1: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP1: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP2_SUPPORT) - DRM_INFO(" DFP2: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP2: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP3_SUPPORT) - DRM_INFO(" DFP3: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP3: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP4_SUPPORT) - DRM_INFO(" DFP4: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP4: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP5_SUPPORT) - DRM_INFO(" DFP5: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP5: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_DFP6_SUPPORT) - DRM_INFO(" DFP6: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" DFP6: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_TV1_SUPPORT) - DRM_INFO(" TV1: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" TV1: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); if (devices & ATOM_DEVICE_CV_SUPPORT) - DRM_INFO(" CV: %s\n", encoder_names[radeon_encoder->encoder_id]); + DRM_INFO(" CV: %s\n", encoder_names[(radeon_encoder->encoder_id < nitems(encoder_names)) ? radeon_encoder->encoder_id : 0]); } } i++; |