In the Linux kernel, the following vulnerability has been resolved:
drm/amdgpu: Add a lock when accessing the buddy trim function
When running YouTube videos and Steam games simultaneously, the tester found a system hang / race condition issue with the multi-display configuration setting. Adding a lock to the buddy allocator's trim function would be the solution.
<log snip> [ 7197.250436] general protection fault, probably for non-canonical address 0xdead000000000108 [ 7197.250447] RIP: 0010:_allocrange+0x8b/0x340 [amddrmbuddy] [ 7197.250470] Call Trace: [ 7197.250472] <TASK> [ 7197.250475] ? showregs+0x6d/0x80 [ 7197.250481] ? dieaddr+0x37/0xa0 [ 7197.250483] ? excgeneralprotection+0x1db/0x480 [ 7197.250488] ? drmsuballocnew+0x13c/0x93d [drmsuballochelper] [ 7197.250493] ? asmexcgeneralprotection+0x27/0x30 [ 7197.250498] ? _allocrange+0x8b/0x340 [amddrmbuddy] [ 7197.250501] ? _allocrange+0x109/0x340 [amddrmbuddy] [ 7197.250506] amddrmbuddyblocktrim+0x1b5/0x260 [amddrmbuddy] [ 7197.250511] amdgpuvrammgrnew+0x4f5/0x590 [amdgpu] [ 7197.250682] amdttmresourcealloc+0x46/0xb0 [amdttm] [ 7197.250689] ttmboallocresource+0xe4/0x370 [amdttm] [ 7197.250696] amdttmbovalidate+0x9d/0x180 [amdttm] [ 7197.250701] amdgpubopin+0x15a/0x2f0 [amdgpu] [ 7197.250831] amdgpudmplanehelperpreparefb+0xb2/0x360 [amdgpu] [ 7197.251025] ? trywaitforcompletion+0x59/0x70 [ 7197.251030] drmatomichelperprepareplanes.part.0+0x2f/0x1e0 [ 7197.251035] drmatomichelperprepareplanes+0x5d/0x70 [ 7197.251037] drmatomichelpercommit+0x84/0x160 [ 7197.251040] drmatomicnonblockingcommit+0x59/0x70 [ 7197.251043] drmmodeatomicioctl+0x720/0x850 [ 7197.251047] ? _pfxdrmmodeatomicioctl+0x10/0x10 [ 7197.251049] drmioctlkernel+0xb9/0x120 [ 7197.251053] ? srsoaliasreturnthunk+0x5/0xfbef5 [ 7197.251056] drmioctl+0x2d4/0x550 [ 7197.251058] ? _pfxdrmmodeatomicioctl+0x10/0x10 [ 7197.251063] amdgpudrmioctl+0x4e/0x90 [amdgpu] [ 7197.251186] _x64sysioctl+0xa0/0xf0 [ 7197.251190] x64syscall+0x143b/0x25c0 [ 7197.251193] dosyscall64+0x7f/0x180 [ 7197.251197] ? srsoaliasreturnthunk+0x5/0xfbef5 [ 7197.251199] ? amdgpudisplayuserframebuffercreate+0x215/0x320 [amdgpu] [ 7197.251329] ? drminternalframebuffercreate+0xb7/0x1a0 [ 7197.251332] ? srsoaliasreturn_thunk+0x5/0xfbef5
(cherry picked from commit 3318ba94e56b9183d0304577c74b33b6b01ce516)