Skip to main content

CVE-2022-49146: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2022-49146cvecve-2022-49146
Published: Wed Feb 26 2025 (02/26/2025, 01:55:14 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: virtio: use virtio_device_ready() in virtio_device_restore() After waking up a suspended VM, the kernel prints the following trace for virtio drivers which do not directly call virtio_device_ready() in the .restore: PM: suspend exit irq 22: nobody cared (try booting with the "irqpoll" option) Call Trace: <IRQ> dump_stack_lvl+0x38/0x49 dump_stack+0x10/0x12 __report_bad_irq+0x3a/0xaf note_interrupt.cold+0xb/0x60 handle_irq_event+0x71/0x80 handle_fasteoi_irq+0x95/0x1e0 __common_interrupt+0x6b/0x110 common_interrupt+0x63/0xe0 asm_common_interrupt+0x1e/0x40 ? __do_softirq+0x75/0x2f3 irq_exit_rcu+0x93/0xe0 sysvec_apic_timer_interrupt+0xac/0xd0 </IRQ> <TASK> asm_sysvec_apic_timer_interrupt+0x12/0x20 arch_cpu_idle+0x12/0x20 default_idle_call+0x39/0xf0 do_idle+0x1b5/0x210 cpu_startup_entry+0x20/0x30 start_secondary+0xf3/0x100 secondary_startup_64_no_verify+0xc3/0xcb </TASK> handlers: [<000000008f9bac49>] vp_interrupt [<000000008f9bac49>] vp_interrupt Disabling IRQ #22 This happens because we don't invoke .enable_cbs callback in virtio_device_restore(). That callback is used by some transports (e.g. virtio-pci) to enable interrupts. Let's fix it, by calling virtio_device_ready() as we do in virtio_dev_probe(). This function calls .enable_cts callback and sets DRIVER_OK status bit. This fix also avoids setting DRIVER_OK twice for those drivers that call virtio_device_ready() in the .restore.

AI-Powered Analysis

AILast updated: 06/30/2025, 03:25:39 UTC

Technical Analysis

CVE-2022-49146 is a vulnerability in the Linux kernel related to the virtio subsystem, which is commonly used for paravirtualized device drivers in virtualized environments. The issue arises during the resume process of a suspended virtual machine (VM). Specifically, the kernel fails to properly invoke the virtio_device_ready() function within the virtio_device_restore() routine. This omission leads to the .enable_cbs callback not being called, which is responsible for enabling interrupts on certain virtio transports such as virtio-pci. As a result, after waking a suspended VM, the kernel logs an interrupt request (IRQ) error indicating "nobody cared" for the IRQ line, followed by a trace of interrupt handling functions and ultimately disables the affected IRQ line. This improper handling can cause the VM's virtio device interrupts to be disabled or improperly managed, potentially leading to degraded device functionality or loss of interrupt-driven communication between the guest and host. The fix involves calling virtio_device_ready() during the restore process, ensuring that the .enable_cbs callback is invoked and the DRIVER_OK status bit is set correctly, thus restoring proper interrupt handling and device readiness. This vulnerability does not appear to have known exploits in the wild and is primarily a stability and functionality issue rather than a direct security breach vector. However, it could indirectly impact availability or reliability of virtualized services relying on virtio devices.

Potential Impact

For European organizations, this vulnerability primarily affects environments running Linux-based virtual machines that utilize virtio drivers, especially those using virtio-pci transports. Many enterprises and cloud providers in Europe rely on Linux virtualization for critical infrastructure, including private clouds, data centers, and edge computing. The improper handling of interrupts after VM suspension and resume could lead to device malfunctions, degraded performance, or service interruptions. This may impact availability of virtualized workloads, particularly in sectors with high reliance on virtualization such as finance, telecommunications, and public services. While the vulnerability does not directly expose confidentiality or integrity risks, the potential for service disruption could have operational and financial consequences. Organizations using Linux kernels with affected versions should be aware that virtual machines may experience interrupt-related errors after suspend/resume cycles, which could complicate maintenance operations or power management strategies. The impact is more pronounced in environments with frequent VM suspend/resume operations or where virtio devices are critical to workload functionality.

Mitigation Recommendations

To mitigate this vulnerability, European organizations should: 1) Apply the latest Linux kernel updates that include the fix for CVE-2022-49146, ensuring virtio_device_ready() is properly called during VM resume. 2) Review and test suspend/resume workflows for virtual machines using virtio devices to detect any interrupt-related issues or device malfunctions. 3) For environments where immediate patching is not feasible, consider avoiding VM suspend/resume cycles or use alternative device drivers that do not rely on the affected virtio restore logic. 4) Monitor kernel logs for IRQ errors similar to "nobody cared" messages indicating interrupt handling problems post-resume. 5) Collaborate with virtualization platform vendors to confirm compatibility and integration of kernel patches. 6) Implement robust backup and recovery procedures to minimize impact from potential service disruptions caused by this issue. These steps go beyond generic advice by focusing on operational practices around VM lifecycle management and targeted monitoring of interrupt-related kernel messages.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2025-02-26T01:49:39.270Z
Cisa Enriched
false
Cvss Version
null
State
PUBLISHED

Threat ID: 682d982dc4522896dcbe5036

Added to database: 5/21/2025, 9:09:01 AM

Last enriched: 6/30/2025, 3:25:39 AM

Last updated: 7/31/2025, 5:28:48 AM

Views: 11

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats