CVE-2022-50873
Description
In the Linux kernel, the following vulnerability has been resolved:
vdpa/vp_vdpa: fix kfree a wrong pointer in vp_vdpa_remove
In vp_vdpa_remove(), the code kfree(&vp_vdpa_mgtdev->mgtdev.id_table) uses a reference of pointer as the argument of kfree, which is the wrong pointer and then may hit crash like this:
Unable to handle kernel paging request at virtual address 00ffff003363e30c Internal error: Oops: 96000004 [#1] SMP Call trace: rb_next+0x20/0x5c ext4_readdir+0x494/0x5c4 [ext4] iterate_dir+0x168/0x1b4 __se_sys_getdents64+0x68/0x170 __arm64_sys_getdents64+0x24/0x30 el0_svc_common.constprop.0+0x7c/0x1bc do_el0_svc+0x2c/0x94 el0_svc+0x20/0x30 el0_sync_handler+0xb0/0xb4 el0_sync+0x160/0x180 Code: 54000220 f9400441 b4000161 aa0103e0 (f9400821) SMP: stopping secondary CPUs Starting crashdump kernel...
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
A use-after-free vulnerability in the Linux kernel's vp_vdpa driver due to kfree being called on a wrong pointer can lead to a system crash.
Vulnerability
Detail In the Linux kernel's vdpa/vp_vdpa driver, a bug was introduced in the vp_vdpa_remove() function. The code passes &vp_vdpa_mgtdev->mgtdev.id_table (a pointer to the pointer) as the argument to kfree, rather than the pointer itself. This results in the kernel attempting to free an incorrect memory location, leading to a kernel crash. The issue manifests as a kernel page fault at an invalid address, as shown in the crash dump.[1]
Exploit
Conditions The vulnerability can be triggered during the removal of a vdpa management device, which is part of normal driver unloading or device hot-unplug operations. An attacker with the ability to trigger such removal (e.g., by physically removing a device or via system admin commands) could cause a denial of service by crashing the system. No special privileges beyond those needed to manage devices are required, but the attack surface is limited to local access or to scenarios where a user can trigger device unbinding.[1]
Impact
A successful exploitation leads to a kernel panic and system crash, resulting in a denial of service. The crash trace shows the system entering a crash dump state, indicating complete loss of availability. There is no indication of memory corruption that could be leveraged for privilege escalation, making it a pure denial-of-service vulnerability.[1]
Mitigation
This vulnerability is fixed in the Linux kernel stable tree. The patch with commit ID ed843d6ed7310a27cf7c8ee0a82a482eed0cb4a6 corrects the kfree call to use the proper pointer. Users are advised to update their kernels to include this fix or apply the patch if manually building.[1]
AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
1Patches
38fe12680b2c76ccc891f36d0ed843d6ed731Vulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
3News mentions
0No linked articles in our index yet.