Description
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras gfx9 cp_ecc_error_irq is only enabled when legacy gfx ras is assert. So in gfx_v9_0_hw_fini, interrupt disablement for cp_ecc_error_irq should be executed under such condition, otherwise, an amdgpu_irq_put calltrace will occur. [ 7283.170322] RIP: 0010:amdgpu_irq_put+0x45/0x70 [amdgpu] [ 7283.170964] RSP: 0018:ffff9a5fc3967d00 EFLAGS: 00010246 [ 7283.170967] RAX: ffff98d88afd3040 RBX: ffff98d89da20000 RCX: 0000000000000000 [ 7283.170969] RDX: 0000000000000000 RSI: ffff98d89da2bef8 RDI: ffff98d89da20000 [ 7283.170971] RBP: ffff98d89da20000 R08: ffff98d89da2ca18 R09: 0000000000000006 [ 7283.170973] R10: ffffd5764243c008 R11: 0000000000000000 R12: 0000000000001050 [ 7283.170975] R13: ffff98d89da38978 R14: ffffffff999ae15a R15: ffff98d880130105 [ 7283.170978] FS: 0000000000000000(0000) GS:ffff98d996f00000(0000) knlGS:0000000000000000 [ 7283.170981] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 7283.170983] CR2: 00000000f7a9d178 CR3: 00000001c42ea000 CR4: 00000000003506e0 [ 7283.170986] Call Trace: [ 7283.170988] <TASK> [ 7283.170989] gfx_v9_0_hw_fini+0x1c/0x6d0 [amdgpu] [ 7283.171655] amdgpu_device_ip_suspend_phase2+0x101/0x1a0 [amdgpu] [ 7283.172245] amdgpu_device_suspend+0x103/0x180 [amdgpu] [ 7283.172823] amdgpu_pmops_freeze+0x21/0x60 [amdgpu] [ 7283.173412] pci_pm_freeze+0x54/0xc0 [ 7283.173419] ? __pfx_pci_pm_freeze+0x10/0x10 [ 7283.173425] dpm_run_callback+0x98/0x200 [ 7283.173430] __device_suspend+0x164/0x5f0 v2: drop gfx11 as it's fixed in a different solution by retiring cp_ecc_irq funcs(Hawking)
Product status
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 625d4112ea25dbad7ddf749fd5c1287ceffb2339
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 20ca90ceda71ed90a4d6960acbe7d5e120b40c0d
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before cd3c0f7013c37cd24fc40b601319007f136c1201
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before f661ad53658a1ea35c004af1f5fbe25c4d1cdb08
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 3d28af21a874c5123d1681c2d686627f7ff7e488
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before efce310db74fdc6d2acd959f3582972ae4a8d7d5
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 before 4a76680311330aefe5074bed8f06afa354b85c48
5.4.243
5.10.180
5.15.112
6.1.29
6.2.16
6.3.3
6.4
References
git.kernel.org/...c/625d4112ea25dbad7ddf749fd5c1287ceffb2339
git.kernel.org/...c/20ca90ceda71ed90a4d6960acbe7d5e120b40c0d
git.kernel.org/...c/cd3c0f7013c37cd24fc40b601319007f136c1201
git.kernel.org/...c/f661ad53658a1ea35c004af1f5fbe25c4d1cdb08
git.kernel.org/...c/3d28af21a874c5123d1681c2d686627f7ff7e488
git.kernel.org/...c/efce310db74fdc6d2acd959f3582972ae4a8d7d5
git.kernel.org/...c/4a76680311330aefe5074bed8f06afa354b85c48