RE: [PATCH 099/109] drm/amd/ras: allow waking RAS processing without an event
"Zhang, Hawking" <[email protected]>
| Newsgroups | org.freedesktop.lists.amd-gfx |
|---|---|
| Message-ID | <EAYPR12MB999158FC50ADD92FBE3FC03709FCD92@EAYPR12MB999158.namprd12.prod.outlook.com> |
AMD General Patch #99 ~ #109 are Reviewed-by: Hawking Zhang <[email protected]> Regards, Hawking -----Original Message----- From: amd-gfx <[email protected]> On Behalf Of Alex Deucher Sent: Saturday, August 15, 2026 5:03 AM To: [email protected] Cc: Liu, Xiang(Dean) <[email protected]>; Deucher, Alexander <[email protected]> Subject: [PATCH 099/109] drm/amd/ras: allow waking RAS processing without an event From: Xiang Liu <[email protected]> GPU MCE handling queues bank data directly in the MCE FIFO and only needs to wake the RAS processing thread. Requiring a separate event request prevents this path from scheduling processing when no event object is available. Permit a NULL request to skip event queue insertion while still incrementing the interrupt request count and waking the processing thread. Signed-off-by: Xiang Liu <[email protected]> Signed-off-by: Alex Deucher <[email protected]> --- drivers/gpu/drm/amd/ras/core/ras_process.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/ras/core/ras_process.c b/drivers/gpu/drm/amd/ras/core/ras_process.c index 395d10c94b195..f313f2021f243 100644 --- a/drivers/gpu/drm/amd/ras/core/ras_process.c +++ b/drivers/gpu/drm/amd/ras/core/ras_process.c @@ -311,13 +311,16 @@ static int ras_process_add_non_umc_interrupt_req(struct ras_core_context *ras_co struct ras_process *ras_proc = &ras_core->ras_proc; int ret; - ret = ras_process_put_event(ras_core, req); - if (!ret) { - atomic_inc(&ras_proc->ras_interrupt_req); - wake_up(&ras_proc->ras_process_wq); + if (req) { + ret = ras_process_put_event(ras_core, req); + if (ret) + return ret; } - return ret; + atomic_inc(&ras_proc->ras_interrupt_req); + wake_up(&ras_proc->ras_process_wq); + + return 0; } int ras_process_add_interrupt_req(struct ras_core_context *ras_core, -- 2.55.0