В ядре Linux устранена следующая уязвимость:
tpm: tpm_i2c_nuvoton: отключить IRQ по таймауту ожидания
i2c_nuvoton_wait_for_stat() включает IRQ перед ожиданием
обработчик прерываний, сообщающий об изменении статуса. Если время ожидания истекло или
прерывается до запуска обработчика, функция возвращается без
балансировка вызова Enable_irq(). Отключите IRQ перед выходом из ошибочного пути ожидания.
Также сохраните
прерванный исходный код ошибки ожидания вместо преобразования его в
-ETIMEDOUT внутри помощника.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: tpm: tpm_i2c_nuvoton: disable IRQ on wait timeout i2c_nuvoton_wait_for_stat() enables the IRQ before waiting for the interrupt handler to report a status change. If the wait times out, or is interrupted before the handler runs, the function returns without balancing the enable_irq() call. Disable the IRQ before leaving the failed wait path. Also preserve an interrupted wait's original error code instead of converting it to -ETIMEDOUT inside the helper.