CVE-2022-50271
Unknown Unknown - Not Provided
BaseFortify

Publication date: 2025-09-15

Last updated on: 2025-12-03

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: vhost/vsock: Use kvmalloc/kvfree for larger packets. When copying a large file over sftp over vsock, data size is usually 32kB, and kmalloc seems to fail to try to allocate 32 32kB regions. vhost-5837: page allocation failure: order:4, mode:0x24040c0 Call Trace: [<ffffffffb6a0df64>] dump_stack+0x97/0xdb [<ffffffffb68d6aed>] warn_alloc_failed+0x10f/0x138 [<ffffffffb68d868a>] ? __alloc_pages_direct_compact+0x38/0xc8 [<ffffffffb664619f>] __alloc_pages_nodemask+0x84c/0x90d [<ffffffffb6646e56>] alloc_kmem_pages+0x17/0x19 [<ffffffffb6653a26>] kmalloc_order_trace+0x2b/0xdb [<ffffffffb66682f3>] __kmalloc+0x177/0x1f7 [<ffffffffb66e0d94>] ? copy_from_iter+0x8d/0x31d [<ffffffffc0689ab7>] vhost_vsock_handle_tx_kick+0x1fa/0x301 [vhost_vsock] [<ffffffffc06828d9>] vhost_worker+0xf7/0x157 [vhost] [<ffffffffb683ddce>] kthread+0xfd/0x105 [<ffffffffc06827e2>] ? vhost_dev_set_owner+0x22e/0x22e [vhost] [<ffffffffb683dcd1>] ? flush_kthread_worker+0xf3/0xf3 [<ffffffffb6eb332e>] ret_from_fork+0x4e/0x80 [<ffffffffb683dcd1>] ? flush_kthread_worker+0xf3/0xf3 Work around by doing kvmalloc instead.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-09-15
Last Modified
2025-12-03
Generated
2026-06-16
AI Q&A
2025-09-15
EPSS Evaluated
2026-06-14
NVD
Affected Vendors & Products
Showing 7 associated CPEs
Vendor Product Version / Range
linux linux_kernel From 4.8 (inc) to 4.14.296 (exc)
linux linux_kernel From 4.15 (inc) to 4.19.262 (exc)
linux linux_kernel From 4.20 (inc) to 5.4.220 (exc)
linux linux_kernel From 5.5 (inc) to 5.10.150 (exc)
linux linux_kernel From 5.11 (inc) to 5.15.75 (exc)
linux linux_kernel From 5.16 (inc) to 5.19.17 (exc)
linux linux_kernel From 6.0 (inc) to 6.0.3 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-NVD-CWE-noinfo
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability in the Linux kernel's vhost/vsock component occurs because the kernel's memory allocator (kmalloc) fails when trying to allocate large memory regions (such as 32kB packets) needed during data transfer over vsock, like when copying large files over sftp. The failure leads to page allocation errors. The fix involves using kvmalloc/kvfree, which better handles larger memory allocations.

Impact Analysis

This vulnerability can cause failures in memory allocation during large data transfers over vsock, potentially leading to errors or crashes in the affected Linux kernel component. This could disrupt data transfer operations such as sftp over vsock, impacting system stability or performance.

Detection Guidance

This vulnerability can be detected by monitoring kernel logs for page allocation failures related to vhost/vsock, specifically messages indicating kmalloc failures when handling large packets (around 32kB). You can check the kernel log using commands like 'dmesg | grep vhost_vsock' or 'journalctl -k | grep vhost_vsock' to look for error traces similar to the provided call trace involving kmalloc failures.

Mitigation Strategies

The immediate mitigation is to apply the fix that replaces kmalloc with kvmalloc/kvfree for larger packets in the vhost/vsock code. This workaround addresses the page allocation failure by using kvmalloc instead of kmalloc for large memory allocations.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2022-50271. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart