summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYiPeng Chai <YiPeng.Chai@amd.com>2026-05-12 05:18:23 +0300
committerAlex Deucher <alexander.deucher@amd.com>2026-05-19 18:53:01 +0300
commitd35e1086b0ad901ef64c52cb138fc0a1e8b0e95e (patch)
tree0fbbb488ddccb3069687042b106289aa24b84ec5
parentd334319060cce7d897f573ef7186c77aedacba8a (diff)
downloadlinux-d35e1086b0ad901ef64c52cb138fc0a1e8b0e95e.tar.xz
drm/amd/ras: add error handling for seqno operations
Add error handling for seqno operations. Signed-off-by: YiPeng Chai <YiPeng.Chai@amd.com> Reviewed-by: Tao Zhou <tao.zhou1@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_mgr.c4
-rw-r--r--drivers/gpu/drm/amd/ras/rascore/ras_core.c6
2 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_mgr.c b/drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_mgr.c
index 79976e322b55..c12e756b4ef0 100644
--- a/drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_mgr.c
+++ b/drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_mgr.c
@@ -498,8 +498,10 @@ uint64_t amdgpu_ras_mgr_gen_ras_event_seqno(struct amdgpu_device *adev,
if ((seqno_type == RAS_SEQNO_TYPE_DE) ||
(seqno_type == RAS_SEQNO_TYPE_POISON_CONSUMPTION)) {
ret = ras_core_put_seqno(ras_mgr->ras_core, seqno_type, seq_no);
- if (ret)
+ if (ret) {
RAS_DEV_WARN(adev, "There are too many ras interrupts!");
+ return 0;
+ }
}
return seq_no;
diff --git a/drivers/gpu/drm/amd/ras/rascore/ras_core.c b/drivers/gpu/drm/amd/ras/rascore/ras_core.c
index 49b3aa7489ff..62d124a3eeac 100644
--- a/drivers/gpu/drm/amd/ras/rascore/ras_core.c
+++ b/drivers/gpu/drm/amd/ras/rascore/ras_core.c
@@ -196,9 +196,9 @@ uint64_t ras_core_gen_seqno(struct ras_core_context *ras_core,
{
uint64_t seqno = 0;
- if (ras_core->sys_fn &&
- ras_core->sys_fn->gen_seqno)
- ras_core->sys_fn->gen_seqno(ras_core, type, &seqno);
+ if (ras_core->sys_fn && ras_core->sys_fn->gen_seqno &&
+ ras_core->sys_fn->gen_seqno(ras_core, type, &seqno))
+ return 0;
return seqno;
}