CVE-2024-57918: drm/amd/display: fix page fault due to max surface definition mismatch
In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: fix page fault due to max surface definition mismatch
DC driver is using two different values to define the maximum number of surfaces: MAXSURFACES and MAXSURFACENUM. Consolidate MAXSURFACES as the unique definition for surface updates across DC.
It fixes page fault faced by Cosmic users on AMD display versions that support two overlay planes, since the introduction of cursor overlay mode.
[Nov26 21:33] BUG: unable to handle page fault for address: 0000000051d0f08b [ +0.000015] #PF: supervisor read access in kernel mode [ +0.000006] #PF: errorcode(0x0000) - not-present page [ +0.000005] PGD 0 P4D 0 [ +0.000007] Oops: Oops: 0000 [#1] PREEMPT SMP NOPTI [ +0.000006] CPU: 4 PID: 71 Comm: kworker/u32:6 Not tainted 6.10.0+ #300 [ +0.000006] Hardware name: Valve Jupiter/Jupiter, BIOS F7A0131 01/30/2024 [ +0.000007] Workqueue: eventsunbound commitwork [drmkmshelper] [ +0.000040] RIP: 0010:copystreamupdatetostream.isra.0+0x30d/0x750 [amdgpu] [ +0.000847] Code: 8b 10 49 89 94 24 f8 00 00 00 48 8b 50 08 49 89 94 24 00 01 00 00 8b 40 10 41 89 84 24 08 01 00 00 49 8b 45 78 48 85 c0 74 0b <0f> b6 00 41 88 84 24 90 64 00 00 49 8b 45 60 48 85 c0 74 3b 48 8b [ +0.000010] RSP: 0018:ffffc203802f79a0 EFLAGS: 00010206 [ +0.000009] RAX: 0000000051d0f08b RBX: 0000000000000004 RCX: ffff9f964f0a8070 [ +0.000004] RDX: ffff9f9710f90e40 RSI: ffff9f96600c8000 RDI: ffff9f964f000000 [ +0.000004] RBP: ffffc203802f79f8 R08: 0000000000000000 R09: 0000000000000000 [ +0.000005] R10: 0000000000000000 R11: 0000000000000000 R12: ffff9f96600c8000 [ +0.000004] R13: ffff9f9710f90e40 R14: ffff9f964f000000 R15: ffff9f96600c8000 [ +0.000004] FS: 0000000000000000(0000) GS:ffff9f9970000000(0000) knlGS:0000000000000000 [ +0.000005] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ +0.000005] CR2: 0000000051d0f08b CR3: 00000002e6a20000 CR4: 0000000000350ef0 [ +0.000005] Call Trace: [ +0.000011] <TASK> [ +0.000010] ? diebody.cold+0x19/0x27 [ +0.000012] ? pagefaultoops+0x15a/0x2d0 [ +0.000014] ? excpagefault+0x7e/0x180 [ +0.000009] ? asmexcpagefault+0x26/0x30 [ +0.000013] ? copystreamupdatetostream.isra.0+0x30d/0x750 [amdgpu] [ +0.000739] ? dccommitstatenocheck+0xd6c/0xe70 [amdgpu] [ +0.000470] updateplanesandstreamstate+0x49b/0x4f0 [amdgpu] [ +0.000450] ? srsoreturnthunk+0x5/0x5f [ +0.000009] ? commitminimaltransitionstate+0x239/0x3d0 [amdgpu] [ +0.000446] updateplanesandstreamv2+0x24a/0x590 [amdgpu] [ +0.000464] ? srsoreturnthunk+0x5/0x5f [ +0.000009] ? sort+0x31/0x50 [ +0.000007] ? amdgpudmatomiccommittail+0x159f/0x3a30 [amdgpu] [ +0.000508] ? srsoreturnthunk+0x5/0x5f [ +0.000009] ? amdgpucrtcgetscanoutposition+0x28/0x40 [amdgpu] [ +0.000377] ? srsoreturnthunk+0x5/0x5f [ +0.000009] ? drmcrtcvblankhelpergetvblanktimestampinternal+0x160/0x390 [drm] [ +0.000058] ? srsoreturnthunk+0x5/0x5f [ +0.000005] ? dmafencedefaultwait+0x8c/0x260 [ +0.000010] ? srsoreturnthunk+0x5/0x5f [ +0.000005] ? waitforcompletiontimeout+0x13b/0x170 [ +0.000006] ? srsoreturnthunk+0x5/0x5f [ +0.000005] ? dmafencewaittimeout+0x108/0x140 [ +0.000010] ? committail+0x94/0x130 [drmkmshelper] [ +0.000024] ? processonework+0x177/0x330 [ +0.000008] ? workerthread+0x266/0x3a0 [ +0.000006] ? pfxworkerthread+0x10/0x10 [ +0.000004] ? kthread+0xd2/0x100 [ +0.000006] ? pfxkthread+0x10/0x10 [ +0.000006] ? retfromfork+0x34/0x50 [ +0.000004] ? pfxkthread+0x10/0x10 [ +0.000005] ? retfromforkasm+0x1a/0x30 [ +0.000011] </TASK>
(cherry picked from commit 1c86c81a86c60f9b15d3e3f43af0363cf56063e7)
Other sources
This CVE was automatically created from a reference found in an email or other text. If you are reading this, then this CVE entry is probably erroneous, since this text should be replaced by the official CVE description automatically.
— Launchpad
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 5.10.223-1Fixed in 5.10.234-1Fixed in 6.1.129-1Fixed in 6.1.135-1Fixed in 6.12.27-1
Event History
Frequently Asked Questions
What is the severity of CVE-2024-57918?
The severity of CVE-2024-57918 is classified as moderate.
How do I fix CVE-2024-57918?
To fix CVE-2024-57918, update the Linux kernel to a version that includes the patch addressing this vulnerability.
What components are affected by CVE-2024-57918?
CVE-2024-57918 affects the AMD Display Core (DC) driver in the Linux kernel.
What are the implications of CVE-2024-57918?
CVE-2024-57918 may lead to page faults due to inconsistencies in surface definition handling.
Is CVE-2024-57918 exploitable in the wild?
As of the current information, there are no known exploits for CVE-2024-57918 in the wild.