Ad

CVE-2026-74372

NONE EPSS 0.17%
Обновлено 17 августа 2026
Linux
Параметр Значение
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: RAID1: исправлена утечка nr_pending в пути ошибки REQ_ATOMIC bad-block. В RAID1_write_request() каждая итерация цикла для каждого зеркала начинается с увеличение rdev->nr_pending. Если запись REQ_ATOMIC встречает badblock в запрошенном диапазоне, код переходит к err_handle без отбрасывания ссылки, взятой для текущего зеркала.

Цикл очистки err_handle будет уменьшаться только для k < i и r1_bio->bios[k] не равен NULL. Поэтому текущий слот пропускается, оставив ссылку на nr_pending утечкой навсегда. Ссылка предотвращает удаление rdev, поскольку RAID1_remove_conf() отказывается удалять rdev с nr_pending > 0.

Исправьте это, вызвав rdev_dec_pending() перед переходом к err_handle.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path In raid1_write_request(), each per-mirror loop iteration begins by incrementing rdev->nr_pending. If a REQ_ATOMIC write encounters a badblock within the requested range, the code jumps to err_handle without dropping the reference taken for the current mirror. err_handle's cleanup loop will only decrements for k < i and r1_bio->bios[k] is non-NULL. The current slot is therefore skipped, leaving its nr_pending reference leaked permanently. The reference prevents the rdev from ever being removed, since raid1_remove_conf() refuses to remove an rdev with nr_pending > 0. Fix this by calling rdev_dec_pending() before jumping to err_handle.