Katalog CVE

CVE-2026-90279

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w podsystemie md/raid5 funkcja raid5_bitmap_sector_map() wyrównuje zakres tablicy do pełnej szerokości paska RAID5 przed konwersją na sektory komponentów. Szerokość ta nie zawsze jest potęgą dwójki, przez co stare logika round_down()/round_up() daje błędne zakresy. Poprawka używa arytmetyki opartej na sector_div(), aby wyrównanie odpowiadało rzeczywistej szerokości paska RAID5.

Ocena ryzyka

Błędne mapowanie sektorów bitmapy może prowadzić do niespójności danych lub błędów zapisu na macierzach RAID5 o konfiguracji, w której szerokość paska nie jest potęgą dwójki. Może skutkować utratą lub uszkodzeniem danych.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę wykorzystującą sector_div(). Po aktualizacji zweryfikuj integralność macierzy RAID5, szczególnie tych o nietypowych rozmiarach chunków.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: md/raid5: round bitmap stripes with sector division raid5_bitmap_sector_map() aligns the array range to full RAID5 stripe widths before converting it to component sectors. That width is chunk_sectors multiplied by the number of data disks, and it is not always a power of two. Reproduce with a 4-disk RAID5, 1024-sector chunks, and three data disks. The full-stripe width is 3072 sectors. For a one-sector write at array sector 3072, correct rounding gives array range [3072, 6144), which maps to component range [1024, 2048). The old round_down()/round_up() logic instead gives [1024, 4096), which maps to [0, 1024). Use sector_div() based arithmetic so the rounded range is aligned to the actual RAID5 stripe width. The deterministic mapper test now reports the fixed component range as [1024, 2048), while the old mask-based range was [0, 1024).

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS