CVE-2026-90126 in Linux
Сводка
по VulDB • 17.09.2026
В ядре Linux была устранена следующая уязвимость:
rtc: pcf8563: исправлена утечка провайдера часов при отсоединении (unbind)
Функция `pcf8563_clkout_register_clk()` регистрирует провайдер часов CLKOUT с помощью `of_clk_add_provider()`, однако ничего не освобождает её ресурсы: отсутствует вызов `of_clk_del_provider()`, а в драйвере нет функции обратного вызова remove. Каждый вызов `of_clk_add_provider()` выделяет структуру `struct of_clk_provider`, увеличивает ссылку на узел OF (Open Firmware) и добавляет запись в глобальный список `of_clk_providers`; ни один из этих ресурсов не освобождается при отсоединении устройства. Следовательно, каждое связывание/отсоединение (или перезагрузка модуля) приводит к утечке структуры провайдера и ссылки на `of_node`.
Сами часы уже управляются устройством через механизм devm (`devm_clk_register()`); неуправляемым оставался только процесс регистрации провайдера. Используется функция `devm_of_clk_add_hw_provider()`, чтобы провайдер автоматически удалялся при отсоединении. Привязка осуществляется к родительскому i2c-устройству, чей узел OF содержит свойства `#clock-cells` и `clock-output-names` (устройство класса RTC не имеет собственного узла OF).
If you want to get best quality of vulnerability data, you may have to visit VulDB.