• limingyu's avatar
    drm/amdgpu: Init data to avoid oops while reading pp_num_states. · 6f81b2d0
    limingyu authored
    For chip like CHIP_OLAND with si enabled(amdgpu.si_support=1),
    the amdgpu will expose pp_num_states to the /sys directory.
    In this moment, read the pp_num_states file will excute the
    amdgpu_get_pp_num_states func. In our case, the data hasn't
    been initialized, so the kernel will access some ilegal
    address, trigger the segmentfault and system will reboot soon:
    
        uos@uos-PC:~$ cat /sys/devices/pci0000\:00/0000\:00\:00.0/0000\:01\:00
        .0/pp_num_states
    
        Message from syslogd@uos-PC at Apr 22 09:26:20 ...
         kernel:[   82.154129] Internal error: Oops: 96000004 [#1] SMP
    
    This patch aims to fix this problem, avoid that reading file
    triggers the kernel sementfault.
    Signed-off-by: default avatarlimingyu <limingyu@uniontech.com>
    Signed-off-by: default avatarzhoubinbin <zhoubinbin@uniontech.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    6f81b2d0
amdgpu_pm.c 104 KB