powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore
In the Linux kernel, the following vulnerability has been resolved: powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore The dtl_access_lock needs to be a rw_sempahore, a sleeping lock, because the code calls kmalloc() while holding it, which can sleep: # echo 1 > /proc/powerpc/vcpudispatch_stats BUG: sleeping function called from invalid context at include/linux/sched/mm.h:337 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 199, name: sh preempt_count: 1, expected: 0 3 locks held by sh/199: #0: c00000000a0743f8 (sb_writers#3){.+.+}-{0:0}, at: vfs_write+0x324/0x438 #1: c0000000028c7058 (dtl_enable_mutex){+.+.}-{3:3}, at: vcpudispatch_stats_write+0xd4/0x5f4 #2: c0000000028c70b8 (dtl_access_lock){+.+.}-{2:2}, at: vcpudispatch_stats_write+0x220/0x5f4 CPU: 0 PID: 199 Comm: sh Not tainted 6.10.0-rc4 #152 Hardware name: IBM pSeries (emulated by qemu) POWER9 (raw) 0x4e1202 0xf000005 of:SLOF,HEAD hv:linux,kvm pSeries Call Trace: dump_stack_lvl+0x130/0x148 (unreliable) __might_resched+0x174/0x410 kmem_cache_alloc_noprof+0x340/0x3d0 alloc_dtl_buffers+0x124/0x1ac vcpudispatch_stats_write+0x2a8/0x5f4 proc_reg_write+0xf4/0x150 vfs_write+0xfc/0x438 ksys_write+0x88/0x148 system_call_exception+0x1c4/0x5a0 system_call_common+0xf4/0x258
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 5.10.231, 5.15.174, 6.1.120, 6.11.11, 6.12.2, 6.6.64
- CVEs
- CVE-2024-56701
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 07:50 UTC · Revision 1
Source evidence
powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore
core-osv · Original sourcePublished 28 Dec 2024, 09:46 UTC
In the Linux kernel, the following vulnerability has been resolved: powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore The dtl_access_lock needs to be a rw_sempahore, a sleeping lock, because the code calls kmalloc() while holding it, which can sleep: # echo 1 > /proc/powerpc/vcpudispatch_stats BUG: sleeping function called from invalid context at include/linux/sched/mm.h:337 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 199, name: sh preempt_count: 1, expected: 0 3 locks held by sh/199: #0: c00000000a0743f8 (sb_writers#3){.+.+}-{0:0}, at: vfs_write+0x324/0x438 #1: c0000000028c7058 (dtl_enable_mutex){+.+.}-{3:3}, at: vcpudispatch_stats_write+0xd4/0x5f4 #2: c0000000028c70b8 (dtl_access_lock){+.+.}-{2:2}, at: vcpudispatch_stats_write+0x220/0x5f4 CPU: 0 PID: 199 Comm: sh Not tainted 6.10.0-rc4 #152 Hardware name: IBM pSeries (emulated by qemu) POWER9 (raw) 0x4e1202 0xf000005 of:SLOF,HEAD hv:linux,kvm pSeries Call Trace: dump_stack_lvl+0x130/0x148 (unreliable) __might_resched+0x174/0x410 kmem_cache_alloc_noprof+0x340/0x3d0 alloc_dtl_buffers+0x124/0x1ac vcpudispatch_stats_write+0x2a8/0x5f4 proc_reg_write+0xf4/0x150 vfs_write+0xfc/0x438 ksys_write+0x88/0x148 system_call_exception+0x1c4/0x5a0 system_call_common+0xf4/0x258
osv:CVE-2024-56701
Kernel
Fixed versions: 5.10.231, 5.15.174, 6.1.120, 6.6.64, 6.11.11, 6.12.2
Complete source record
{
"id": "2a5caf042c51874e803015baf67a8e1d846a60a32072f747fce9acd8a5369af2",
"url": "https://osv.dev/vulnerability/CVE-2024-56701",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore",
"summary": "In the Linux kernel, the following vulnerability has been resolved: powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore The dtl_access_lock needs to be a rw_sempahore, a sleeping lock, because the code calls kmalloc() while holding it, which can sleep: # echo 1 > /proc/powerpc/vcpudispatch_stats BUG: sleeping function called from invalid context at include/linux/sched/mm.h:337 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 199, name: sh preempt_count: 1, expected: 0 3 locks held by sh/199: #0: c00000000a0743f8 (sb_writers#3){.+.+}-{0:0}, at: vfs_write+0x324/0x438 #1: c0000000028c7058 (dtl_enable_mutex){+.+.}-{3:3}, at: vcpudispatch_stats_write+0xd4/0x5f4 #2: c0000000028c70b8 (dtl_access_lock){+.+.}-{2:2}, at: vcpudispatch_stats_write+0x220/0x5f4 CPU: 0 PID: 199 Comm: sh Not tainted 6.10.0-rc4 #152 Hardware name: IBM pSeries (emulated by qemu) POWER9 (raw) 0x4e1202 0xf000005 of:SLOF,HEAD hv:linux,kvm pSeries Call Trace: dump_stack_lvl+0x130/0x148 (unreliable) __might_resched+0x174/0x410 kmem_cache_alloc_noprof+0x340/0x3d0 alloc_dtl_buffers+0x124/0x1ac vcpudispatch_stats_write+0x2a8/0x5f4 proc_reg_write+0xf4/0x150 vfs_write+0xfc/0x438 ksys_write+0x88/0x148 system_call_exception+0x1c4/0x5a0 system_call_common+0xf4/0x258",
"evidence": "osv:CVE-2024-56701",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "5.10.231",
"evidence": "/affected/1/ranges"
},
{
"value": "5.15.174",
"evidence": "/affected/1/ranges"
},
{
"value": "6.1.120",
"evidence": "/affected/1/ranges"
},
{
"value": "6.6.64",
"evidence": "/affected/1/ranges"
},
{
"value": "6.11.11",
"evidence": "/affected/1/ranges"
},
{
"value": "6.12.2",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2024-56701",
"aliases": [
"CVE-2024-56701"
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "06220d78f24a20549757be1014e57c382406cc92"
},
{
"fixed": "6956c0e7346ce1bbfc726755aa8da10d26e84276"
},
{
"fixed": "f6ec133668757f84e5143f1eb141fd0b83778b9e"
},
{
"fixed": "fa5b5ea257135e771b489c83a2e93b5935d0108e"
},
{
"fixed": "a246daa26b717e755ccc9061f47f7cd1c0b358dd"
},
{
"fixed": "b125d0cf1adde7b2b47d7337fed7e9133eea3463"
},
{
"fixed": "525e18f1ba7c2b098c8ba587fb397efb34a6574c"
},
{
"fixed": "cadae3a45d23aa4f6485938a67cbc47aaaa25e38"
}
]
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-56701.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.3.0"
},
{
"fixed": "5.10.231"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.11.0"
},
{
"fixed": "5.15.174"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.16.0"
},
{
"fixed": "6.1.120"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.2.0"
},
{
"fixed": "6.6.64"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.7.0"
},
{
"fixed": "6.11.11"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.12.0"
},
{
"fixed": "6.12.2"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-56701.json"
}
}
],
"modified": "2026-10-28T02:30:50.364074672Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/525e18f1ba7c2b098c8ba587fb397efb34a6574c",
"https://git.kernel.org/stable/c/6956c0e7346ce1bbfc726755aa8da10d26e84276",
"https://git.kernel.org/stable/c/a246daa26b717e755ccc9061f47f7cd1c0b358dd",
"https://git.kernel.org/stable/c/b125d0cf1adde7b2b47d7337fed7e9133eea3463",
"https://git.kernel.org/stable/c/cadae3a45d23aa4f6485938a67cbc47aaaa25e38",
"https://git.kernel.org/stable/c/f6ec133668757f84e5143f1eb141fd0b83778b9e",
"https://git.kernel.org/stable/c/fa5b5ea257135e771b489c83a2e93b5935d0108e",
"https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/56xxx/CVE-2024-56701.json",
"https://nvd.nist.gov/vuln/detail/CVE-2024-56701",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/56xxx/CVE-2024-56701.json"
}
},
"related_cves": [
{
"value": "CVE-2024-56701",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 518679,
"published_at": "2024-12-28T09:46:23.516+00:00"
}