This code only applies to amdgpu processing
poison consumption after uniras is enabled,
but not to sriov.

Signed-off-by: YiPeng Chai <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 15 ---------------
 drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c    | 10 ++++++++++
 2 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
index 39d712e3e692..70f5334775a6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
@@ -36,7 +36,6 @@
 #include "amdgpu_ras.h"
 #include "amdgpu_umc.h"
 #include "amdgpu_reset.h"
-#include "amdgpu_ras_mgr.h"
 
 /* Total memory size in system memory and all GPU VRAM. Used to
  * estimate worst case amount of memory to reserve for page tables
@@ -757,20 +756,6 @@ void 
amdgpu_amdkfd_ras_pasid_poison_consumption_handler(struct amdgpu_device *ad
                                enum amdgpu_ras_block block, uint16_t pasid,
                                pasid_notify pasid_fn, void *data, uint32_t 
reset)
 {
-
-       if (amdgpu_uniras_enabled(adev)) {
-               struct ras_ih_info ih_info;
-
-               memset(&ih_info, 0, sizeof(ih_info));
-               ih_info.block = block;
-               ih_info.pasid = pasid;
-               ih_info.reset = reset;
-               ih_info.pasid_fn = pasid_fn;
-               ih_info.data = data;
-               amdgpu_ras_mgr_handle_consumer_interrupt(adev, &ih_info);
-               return;
-       }
-
        amdgpu_umc_pasid_poison_handler(adev, block, pasid, pasid_fn, data, 
reset);
 }
 
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
index f540ee37a4ac..a662758b4f75 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c
@@ -24,6 +24,7 @@
 #include <linux/sort.h>
 #include "amdgpu.h"
 #include "umc_v6_7.h"
+#include "amdgpu_ras_mgr.h"
 #define MAX_UMC_POISON_POLLING_TIME_SYNC   20  //ms
 
 #define MAX_UMC_HASH_STRING_SIZE  256
@@ -273,6 +274,15 @@ int amdgpu_umc_pasid_poison_handler(struct amdgpu_device 
*adev,
                        }
 
                        amdgpu_ras_error_data_fini(&err_data);
+               } else if (amdgpu_uniras_enabled(adev)) {
+                       struct ras_ih_info ih_info = {0};
+
+                       ih_info.block = block;
+                       ih_info.pasid = pasid;
+                       ih_info.reset = reset;
+                       ih_info.pasid_fn = pasid_fn;
+                       ih_info.data = data;
+                       amdgpu_ras_mgr_handle_consumer_interrupt(adev, 
&ih_info);
                } else {
                        struct amdgpu_ras *con = amdgpu_ras_get_context(adev);
                        int ret;
-- 
2.34.1

Reply via email to