Description (CNA)
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
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 06220d78f24a20549757be1014e57c382406cc92 before 6956c0e7346ce1bbfc726755aa8da10d26e84276; affected 06220d78f24a20549757be1014e57c382406cc92 before f6ec133668757f84e5143f1eb141fd0b83778b9e; affected 06220d78f24a20549757be1014e57c382406cc92 before fa5b5ea257135e771b489c83a2e93b5935d0108e; affected 06220d78f24a20549757be1014e57c382406cc92 before a246daa26b717e755ccc9061f47f7cd1c0b358dd; affected 06220d78f24a20549757be1014e57c382406cc92 before b125d0cf1adde7b2b47d7337fed7e9133eea3463; affected 06220d78f24a20549757be1014e57c382406cc92 before 525e18f1ba7c2b098c8ba587fb397efb34a6574c; affected 06220d78f24a20549757be1014e57c382406cc92 before cadae3a45d23aa4f6485938a67cbc47aaaa25e38 |
| Linux / Linux | affected 5.3; unaffected 0 before 5.3; unaffected 5.10.231 through 5.10.*; unaffected 5.15.174 through 5.15.*; unaffected 6.1.120 through 6.1.*; unaffected 6.6.64 through 6.6.*; unaffected 6.11.11 through 6.11.*; unaffected 6.12.2 through 6.12.*; unaffected 6.13 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/6956c0e7346ce1bbfc726755aa8da10d26e84276
- https://git.kernel.org/stable/c/f6ec133668757f84e5143f1eb141fd0b83778b9e
- https://git.kernel.org/stable/c/fa5b5ea257135e771b489c83a2e93b5935d0108e
- https://git.kernel.org/stable/c/a246daa26b717e755ccc9061f47f7cd1c0b358dd
- https://git.kernel.org/stable/c/b125d0cf1adde7b2b47d7337fed7e9133eea3463
- https://git.kernel.org/stable/c/525e18f1ba7c2b098c8ba587fb397efb34a6574c
- https://git.kernel.org/stable/c/cadae3a45d23aa4f6485938a67cbc47aaaa25e38
ADP enrichment
No English description supplied.