Katalog CVE

CVE-2026-97521

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux naprawiono podatność w gfs2: gfs2_quota_init() sprawdza duplikaty identyfikatorów zmian kwot, trzymając qd_lock i bitlock zasobnika hashy kwot. Ta ścieżka używała gfs2_qd_search_bucket(), która pobiera referencję lockref przez lockref_get_not_dead(). Na PREEMPT_RT może to spać, co nie jest dozwolone pod bitlockiem zasobnika, wywołując 'sleeping function called from invalid context'. Poprawka używa wyszukiwania bez referencji w tej ścieżce i kontynuuje obsługę duplikatów bez pobierania lockref. Refaktoryzuje gfs2_qd_search_bucket(), aby opierać się na pomocniku bez referencji, tak aby przechodzenie pozostało w jednym miejscu.

Ocena ryzyka

Podatność może powodować błędy krytyczne w systemach z włączonym PREEMPT_RT, prowadząc do awarii lub nieprawidłowego działania funkcji kwot w systemie plików GFS2.

Rekomendacja

Zaleca się aktualizację jądra Linux do wersji zawierającej poprawkę oraz monitorowanie systemów z GFS2 pod kątem nietypowych zdarzeń.

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: gfs2: fix quota init duplicate scan gfs2_quota_init() checks for duplicate quota_change IDs while holding qd_lock and the quota hash bucket bitlock. That path used gfs2_qd_search_bucket(), which takes a lockref reference via lockref_get_not_dead(). On PREEMPT_RT this may sleep, which is not allowed under the bucket bitlock, triggering "sleeping function called from invalid context". Use a no-ref bucket lookup in this path, then continue duplicate handling without taking a lockref there. Refactor gfs2_qd_search_bucket() to build on top of the no-ref helper so lookup traversal stays in one place. This patch fixes a bug reported by syzbot.

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