In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: Fix memory leak in dmswfini()
After destroying dmub_srv, the memory associated with it is not freed, causing a memory leak:
unreferenced object 0xffff896302b45800 (size 1024): comm "(udev-worker)", pid 222, jiffies 4294894636 hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace (crc 6265fd77): [<ffffffff993495ed>] kmalloctrace+0x29d/0x340 [<ffffffffc0ea4a94>] dmdmubswinit+0xb4/0x450 [amdgpu] [<ffffffffc0ea4e55>] dmswinit+0x15/0x2b0 [amdgpu] [<ffffffffc0ba8557>] amdgpudeviceinit+0x1417/0x24e0 [amdgpu] [<ffffffffc0bab285>] amdgpudriverloadkms+0x15/0x190 [amdgpu] [<ffffffffc0ba09c7>] amdgpupciprobe+0x187/0x4e0 [amdgpu] [<ffffffff9968fd1e>] localpciprobe+0x3e/0x90 [<ffffffff996918a3>] pcideviceprobe+0xc3/0x230 [<ffffffff99805872>] reallyprobe+0xe2/0x480 [<ffffffff99805c98>] _driverprobedevice+0x78/0x160 [<ffffffff99805daf>] driverprobedevice+0x1f/0x90 [<ffffffff9980601e>] _driverattach+0xce/0x1c0 [<ffffffff99803170>] busforeachdev+0x70/0xc0 [<ffffffff99804822>] busadddriver+0x112/0x210 [<ffffffff99807245>] driverregister+0x55/0x100 [<ffffffff990012d1>] doone_initcall+0x41/0x300
Fix this by freeing dmub_srv after destroying it.
[
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bae67893578d608e35691dcdfa90c4957debf1d3",
"signature_type": "Line",
"id": "CVE-2024-26833-660e547f",
"target": {
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"line_hashes": [
"26152075505037892325602964877648724186",
"136636928193085045954678229895825316725",
"233630870289335837576485942618087709920",
"304775301050479723879571013283193033811"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b49b022f7dfce85eb77d0d987008fde5c01d7857",
"signature_type": "Function",
"id": "CVE-2024-26833-c1c9003f",
"target": {
"function": "dm_sw_fini",
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"length": 388.0,
"function_hash": "309954944191777074303505970995910803626"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bae67893578d608e35691dcdfa90c4957debf1d3",
"signature_type": "Function",
"id": "CVE-2024-26833-caa5d6ac",
"target": {
"function": "dm_sw_fini",
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"length": 334.0,
"function_hash": "101322415744477499227073525698487486241"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@33f649f1b1cea39ed360e6c12bba4fac83118e6e",
"signature_type": "Function",
"id": "CVE-2024-26833-d04754ce",
"target": {
"function": "dm_sw_fini",
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"length": 388.0,
"function_hash": "309954944191777074303505970995910803626"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@58168005337eabef345a872be3f87d0215ff3b30",
"signature_type": "Line",
"id": "CVE-2024-26833-d0654272",
"target": {
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"line_hashes": [
"26152075505037892325602964877648724186",
"136636928193085045954678229895825316725",
"233630870289335837576485942618087709920",
"102041091914165463294246245490820652881"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@58168005337eabef345a872be3f87d0215ff3b30",
"signature_type": "Function",
"id": "CVE-2024-26833-d470c0a8",
"target": {
"function": "dm_sw_fini",
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"length": 388.0,
"function_hash": "309954944191777074303505970995910803626"
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@33f649f1b1cea39ed360e6c12bba4fac83118e6e",
"signature_type": "Line",
"id": "CVE-2024-26833-d6f58d4d",
"target": {
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"line_hashes": [
"26152075505037892325602964877648724186",
"136636928193085045954678229895825316725",
"233630870289335837576485942618087709920",
"102041091914165463294246245490820652881"
],
"threshold": 0.9
},
"deprecated": false
},
{
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b49b022f7dfce85eb77d0d987008fde5c01d7857",
"signature_type": "Line",
"id": "CVE-2024-26833-d89a80b6",
"target": {
"file": "drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c"
},
"digest": {
"line_hashes": [
"26152075505037892325602964877648724186",
"136636928193085045954678229895825316725",
"233630870289335837576485942618087709920",
"102041091914165463294246245490820652881"
],
"threshold": 0.9
},
"deprecated": false
}
]