Cleaner shader will cause function level reset when run compute
benchmark and gfx benchmark at same time in multi vf environment.
Disable cleaner shader in multi vf environment.

Signed-off-by: Lin.Cao <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c 
b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
index ec9b84f92d46..c5d747f55c86 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
@@ -1645,7 +1645,8 @@ static int gfx_v11_0_sw_init(struct amdgpu_ip_block 
*ip_block)
                if (adev->gfx.me_fw_version  >= 2280 &&
                    adev->gfx.pfp_fw_version >= 2370 &&
                    adev->gfx.mec_fw_version >= 2450  &&
-                   adev->mes.fw_version[0] >= 99) {
+                   adev->mes.fw_version[0] >= 99 &&
+                       !amdgpu_sriov_multi_vf_mode(adev)) {
                        adev->gfx.enable_cleaner_shader = true;
                        r = amdgpu_gfx_cleaner_shader_sw_init(adev, 
adev->gfx.cleaner_shader_size);
                        if (r) {
-- 
2.46.1

Reply via email to