diff options
| author | YiPeng Chai <YiPeng.Chai@amd.com> | 2026-05-12 05:18:23 +0300 |
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2026-05-19 18:53:01 +0300 |
| commit | d35e1086b0ad901ef64c52cb138fc0a1e8b0e95e (patch) | |
| tree | 0fbbb488ddccb3069687042b106289aa24b84ec5 | |
| parent | d334319060cce7d897f573ef7186c77aedacba8a (diff) | |
| download | linux-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.c | 4 | ||||
| -rw-r--r-- | drivers/gpu/drm/amd/ras/rascore/ras_core.c | 6 |
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; } |
