CVE-2022-49322

Source
https://cve.org/CVERecord?id=CVE-2022-49322
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49322.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-49322
Downstream
Related
Published
2025-02-26T02:10:46.658Z
Modified
2026-03-20T12:22:21.972195Z
Severity
  • 5.5 (Medium) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
tracing: Fix sleeping function called from invalid context on RT kernel
Details

In the Linux kernel, the following vulnerability has been resolved:

tracing: Fix sleeping function called from invalid context on RT kernel

When setting bootparams="traceevent=initcall:initcallstart tpprintk=1" in the cmdline, the outputprintk() was called, and the spinlockirqsave() was called in the atomic and irq disable interrupt context suitation. On the PREEMPTRT kernel, these locks are replaced with sleepable rt-spinlock, so the stack calltrace will be triggered. Fix it by rawspinlockirqsave when PREEMPTRT and "traceevent=initcall:initcallstart tpprintk=1" enabled.

BUG: sleeping function called from invalid context at kernel/locking/spinlockrt.c:46 inatomic(): 1, irqsdisabled(): 0, nonblock: 0, pid: 1, name: swapper/0 preemptcount: 2, expected: 0 RCU nest depth: 0, expected: 0 Preemption disabled at: [<ffffffff8992303e>] trytowakeup+0x7e/0xba0 CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.17.1-rt17+ #19 34c5812404187a875f32bee7977f7367f9679ea7 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014 Call Trace: <TASK> dumpstacklvl+0x60/0x8c dump_stack+0x10/0x12 _mightresched.cold+0x11d/0x155 rtspinlock+0x40/0x70 traceeventbuffercommit+0x2fa/0x4c0 ? mapvsyscall+0x93/0x93 traceeventraweventinitcallstart+0xbe/0x110 ? perftraceinitcallfinish+0x210/0x210 ? probeschedwakeup+0x34/0x40 ? ttwudowakeup+0xda/0x310 ? tracehardirqson+0x35/0x170 ? mapvsyscall+0x93/0x93 dooneinitcall+0x217/0x3c0 ? traceeventraweventinitcalllevel+0x170/0x170 ? pushcpustop+0x400/0x400 ? cblistinitgeneric+0x241/0x290 kernelinitfreeable+0x1ac/0x347 ? rawspinunlockirq+0x65/0x80 ? restinit+0xf0/0xf0 kernelinit+0x1e/0x150 retfromfork+0x22/0x30 </TASK>

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/49xxx/CVE-2022-49322.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0daa2302968c13b657118d6ac92471f8fd2f3f28
Fixed
be1f323fb9d9b14a505ca22d742d321769454de1
Fixed
40f9fde06b25884baa0c4bd138b909a9b67218b4
Fixed
48c6ee7d6c614f09b2c8553a95eefef6ecf196e0
Fixed
1788e6dbb61286215442b1af99e51405a6206762
Fixed
9b534640a2c6a8d88168febc82ec6d161184f2ec
Fixed
43bfc4dccc416c964b53cbdc430e814f8b6f770b
Fixed
9abf3db8bdb63ab545034148ef2118f4d088ca59
Fixed
12025abdc8539ed9d5014e2d647a3fd1bd3de5cd

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-49322.json"