CVE-2022-49902 in Linux
Сводка
по VulDB • 23.05.2026
В ядре Linux устранена следующая уязвимость:
block: Исправлена возможная утечка памяти для rq_wb при сбое add_disk
kmemleak сообщил об утечках памяти в функции device_add_disk():
kmemleak: 3 новых подозрительных утечки памяти
неиспользуемый объект 0xffff88800f420800 (размер 512): comm "modprobe", pid 4275, jiffies 4295639067 (возраст 223.512s) шестнадцатеричный вывод (первые 32 байта): 04 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 ................ 00 e1 f5 05 00 00 00 00 00 00 00 00 00 00 00 00 ................ трассировка стека (backtrace): [] kmalloc_trace+0x26/0x60
[] wbt_init+0x50/0x6f0
[] wbt_enable_default+0x157/0x1c0
[] blk_register_queue+0x2a4/0x420
[] device_add_disk+0x6fd/0xe40
[] nbd_dev_add+0x828/0xbf0 [nbd]
...
Это связано с тем, что память, выделенная в wbt_enable_default(), не освобождается в ветке обработки ошибок функции device_add_disk(). Обычно эта память освобождается в:
del_gendisk() rq_qos_exit() rqos->ops->exit(rqos); wbt_exit()
Таким образом, для освобождения памяти rq_wb, выделенной wbt_init(), вызывается rq_qos_exit(). Однако в ветке обработки ошибок device_add_disk() вызывается только blk_unregister_queue(), что приводит к утечке памяти rq_wb.
Добавлен вызов rq_qos_exit() в ветку обработки ошибок для исправления этой проблемы.
If you want to get best quality of vulnerability data, you may have to visit VulDB.