Katalog CVE

CVE-2026-90124

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux funkcje rzg2l_clear_irq_int() i rzg2l_clear_tint_int() wykonują odczyt-modyfikację-zapis na rejestrach ISCR/TSCR, aby wyczyścić bit obsłużonego przerwania. Ponieważ rejestry te są czyszczone przez zapis zera na danym bicie, równoległe ustawienie innego bitu przerwania między odczytem a zapisem powoduje jego skasowanie i utratę przerwania.

Ocena ryzyka

Utrata przerwań może prowadzić do zawieszenia lub nieprawidłowego działania urządzeń peryferyjnych, zwłaszcza przy jednoczesnym zgłaszaniu wielu przerwań.

Rekomendacja

Zaktualizuj jądro Linux do wersji z poprawką, która zapisuje z powrotem tylko bit podlegający czyszczeniu, ustawiając pozostałe bity na 1, zamiast modyfikować cały rejestr.

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: irqchip/renesas-rzg2l: Fix loss of interrupt rzg2l_clear_irq_int() and rzg2l_clear_tint_int() perform a read-modify-write on the ISCR/TSCR status registers to clear the bit for the interrupt just handled. Since these registers are write-0-to-clear per bit, this is racy: If another interrupt's status bit gets set between the read and the write, that bit is written back as 0 by the software-constructed value, clearing an interrupt that hasn't been serviced yet and losing it. This can be reproduced by triggering multiple interrupts at once, e.g.: gpioset -c gpiochip0 355=0 353=0 328=0 352=0 Fix this by writing back only the bit being cleared, with all other bits set to 1, instead of read-modify-writing the whole register. Since 1-bits are left unchanged by hardware, concurrently-set status bits for other interrupts are preserved.

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