DF-3890 / fix.diff
--- a/sys/dev/drm/amd/amdgpu/kv_dpm.c +++ b/sys/dev/drm/amd/amdgpu/kv_dpm.c @@ -87,7 +87,10 @@ if (vid_mapping_table->entries[i].vid_2bit == vid_2bit) return vid_mapping_table->entries[i].vid_7bit; } - return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_7bit; + if (vid_mapping_table->num_entries) + return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_7bit; + /* empty mapping table (all VBIOS usVoltageID == 0) */ + return 0; } } @@ -111,7 +114,9 @@ return vid_mapping_table->entries[i].vid_2bit; } - return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_2bit; + if (vid_mapping_table->num_entries) + return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_2bit; + return 0; } } |