Katalog CVE

CVE-2026-90276

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w podsystemie md/md-llbitmap funkcja llbitmap_destroy() usuwa pending_timer przed opróżnieniem md_llbitmap_io_wq, ale daemon_work może nadal być zakolejkowany lub uruchomiony i ponownie uzbroić pending_timer. Jeśli nastąpi to podczas niszczenia, timer może pozostać uzbrojony po zwolnieniu llbitmap i później odwołać się do zwolnionej pamięci. Poprawka dodaje bit BITMAP_SHUTDOWN i używa timer_shutdown_sync().

Ocena ryzyka

Może prowadzić do użycia zwolnionej pamięci (use-after-free) i awarii jądra podczas niszczenia llbitmap. Może skutkować niestabilnością systemu lub utratą danych na macierzach md.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę z bitem BITMAP_SHUTDOWN i timer_shutdown_sync(). Zalecane jest wdrożenie aktualizacji przed rutynowym usuwaniem macierzy korzystających z llbitmap.

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/md-llbitmap: stop daemon timer rearm on destroy llbitmap_destroy() deletes pending_timer before flushing md_llbitmap_io_wq. However, daemon_work can still be queued or running after the timer has been deleted, and the daemon path can arm pending_timer again when it finds dirty chunks that are not ready to flush yet. If that happens during teardown, pending_timer can remain armed after llbitmap is freed and later dereference freed memory. Add a BITMAP_SHUTDOWN bit to llbitmap->flags, set it before deleting the timer, and make the timer and daemon paths stop queueing or rearming work once teardown starts. Cancel daemon_work before flushing the shared workqueue so no already queued daemon instance can race with the free. Use timer_shutdown_sync() so a daemon instance that passed the shutdown check before teardown cannot rearm the timer afterward. BITMAP_SHUTDOWN is a runtime-only state. Mask it out when reading and updating the llbitmap superblock so the shutdown state is never loaded from disk or persisted to disk.

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