drm/amdgpu/ras: only check bad page for address-based UMC injection
authorStanley.Yang <Stanley.Yang@amd.com>
Fri, 26 Jun 2026 12:20:15 +0000 (20:20 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 14 Jul 2026 23:12:36 +0000 (19:12 -0400)
commitbf65973e5f5e1d6f7398c43bb8bc78ec6c1f3116
tree57df6a81fbd7489e4aafae5881060e1b4665bdc7
parenta8880289fd67e85d155dbe6d625e3f6fcd94ff51
drm/amdgpu/ras: only check bad page for address-based UMC injection

UMC error injection on MI300 series is dispatched by the RAS TA using
the injection method; only the "coherent" methods are address based,
the single-shot/persistent/ac-parity ones ignore the address.

The debugfs control path validated the injection address against the
bad page list for every UMC injection. On uniras (SMU v13+) devices the
address is now validated by the ras_mgr inject handler, so the legacy
debugfs bad page check only runs on the legacy RAS path; other ASICs
keep injecting by address.

In the ras_mgr handler an injection is treated as non address-based only
when userspace passes the U64_MAX sentinel address and the method is a
non-address method. In that case the address is cleared to 0 and the bad
page / range validation is skipped; otherwise the injection address is
validated as before.

Signed-off-by: Stanley.Yang <Stanley.Yang@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_ras_cmd.c