drm/amdgpu: Call trace info was found in dmesg when loading amdgpu
authorlin cao <lin.cao@amd.com>
Wed, 13 Jul 2022 10:20:58 +0000 (18:20 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 18 Jul 2022 20:38:10 +0000 (16:38 -0400)
In the case of SRIOV, the register smnMp1_PMI_3_FIFO will get an invalid
value which will cause the "shift out of bound". In Ubuntu22.04, this
issue will be checked an related call trace will be reported in dmesg.

Signed-off-by: lin cao <lin.cao@amd.com>
Reviewed-by: Jingwen Chen <Jingwen.Chen2@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c

index b71860e..fa520d7 100644 (file)
@@ -886,6 +886,7 @@ static void sienna_cichlid_stb_init(struct smu_context *smu);
 
 static int sienna_cichlid_init_smc_tables(struct smu_context *smu)
 {
+       struct amdgpu_device *adev = smu->adev;
        int ret = 0;
 
        ret = sienna_cichlid_tables_init(smu);
@@ -896,7 +897,8 @@ static int sienna_cichlid_init_smc_tables(struct smu_context *smu)
        if (ret)
                return ret;
 
-       sienna_cichlid_stb_init(smu);
+       if (!amdgpu_sriov_vf(adev))
+               sienna_cichlid_stb_init(smu);
 
        return smu_v11_0_init_smc_tables(smu);
 }