CVE-2022-49312

staging: rtl8712: fix a potential memory leak in r871xu_drv_init()

State
Published
Severity
5.5 Medium
Published
Feb 26, 2025
Updated
May 11, 2026
Reserved
Feb 26, 2025

Read the record on cve.org

Description

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

staging: rtl8712: fix a potential memory leak in r871xu_drv_init()

In r871xu_drv_init(), if r8712_init_drv_sw() fails, then the memory allocated by r8712_alloc_io_queue() in r8712_usb_dvobj_init() is not properly released as there is no action will be performed by r8712_usb_dvobj_deinit(). To properly release it, we should call r8712_free_io_queue() in r8712_usb_dvobj_deinit().

Besides, in r871xu_dev_remove(), r8712_usb_dvobj_deinit() will be called by r871x_dev_unload() under condition `padapter->bup` and r8712_free_io_queue() is called by r8712_free_drv_sw(). However, r8712_usb_dvobj_deinit() does not rely on `padapter->bup` and calling r8712_free_io_queue() in r8712_free_drv_sw() is negative for better understading the code. So I move r8712_usb_dvobj_deinit() into r871xu_dev_remove(), and remove r8712_free_io_queue() from r8712_free_drv_sw().

Scores

CVSSScoreVectorSource
3.15.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HCISA-ADP

Weaknesses

  • CWE-401 Missing Release of Memory after Effective Lifetime

Affected Products

ProductVersions
LinuxLinux
  • 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef to before 5a89a92efc342dd7c44b6056da87debc598f9c73Affected
  • 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef to before 8eb42d6d10f8fe509117859defddf9e72b4fa4d0Affected
  • 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef to before 205e039fead72e87ad2838f5e649a4c4834f648bAffected
  • 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef to before a2882b8baad068d21c99fb2ab5a85a2bdbd5b834Affected
  • 2865d42c78a9121caad52cb02d1fbb7f5cdbc4ef to before 7288ff561de650d4139fab80e9cb0da9b5b32434Affected
LinuxLinux
  • 2.6.37Affected
  • before 2.6.37Not affected
  • 5.10.122 through 5.10.*Not affected
  • 5.15.47 through 5.15.*Not affected
  • 5.17.15 through 5.17.*Not affected
  • 5.18.4 through 5.18.*Not affected
  • 5.19 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.