Intel научит драйверы Linux Xe игнорировать «битую» видеопамять
Пока пользователи Windows при появлении первых артефактов на экране обычно готовятся к гарантийному обмену, разработчики Intel для Linux решили действовать радикально. В графическом драйвере Xe появятся инструменты, которые позволят системе буквально «не замечать» проблемные участки видеопамяти (VRAM). Изменения готовятся для ядра Linux 7.4, о чем сообщает издание Phoronix.
Идея проста: если железо начинает давать сбои, драйвер должен выявить это еще на старте и изолировать неисправные страницы памяти от греха подальше, чтобы не провоцировать крах всей системы.
Диагностика при загрузке
Первое нововведение — это базовая проверка VRAM во время инициализации драйвера. Intel фокусируется на последней странице видеопамяти, поскольку именно там чаще всего «вылазят» ошибки, связанные с размерами BAR или некорректным отображением адресного пространства. Как объяснил инженер Intel Мэттью Олд (Matthew Auld), толчком к этому стали проблемы, выявленные на некоторых видеокартах Intel линии Battlemage.
В частности, был зафиксирован баг с CCS (Color Control Surface) — специальной областью для метаданных компрессии. Из-за неправильного смещения драйвер мог ошибочно воспринимать эту служебную зону как обычную доступную память. Новый механизм должен отлавливать такие «промахи» еще до того, как система начнет активно использовать неправильно размеченные области.
Логика «битых секторов» для GPU
Вторая часть обновления значительно интереснее с точки зрения живучести железа. После длительной разработки, прошедшей через 21 ревизию кода, драйвер Xe научился отключать отдельные физически неисправные страницы VRAM. Если конкретный участок памяти начинает сыпать ошибками, драйвер навсегда исключает его из пула доступных для операций выделения ресурсов.
Этот подход копирует принцип работы накопителей с поврежденными секторами. Вместо того чтобы постоянно обращаться к проблемному участку, что приводит к порче данных или перезапуску GPU, драйвер обозначает его как недоступный. Видеокарта при этом продолжит работу, хотя общий объем VRAM немного уменьшится. Это разумный компромисс: лучше потерять несколько мегабайт емкости, чем получить неработоспособный графический адаптер.
Пока что эти механизмы касаются только драйвера Intel Xe для Linux. Появится ли подобная система контроля в драйверах для Windows — пока неизвестно.
Пока Intel пытается программно «лечить» железо, Lenovo и Google работают над новыми устройствами — в сети уже появились рендеры и характеристики ноутбука Googlebook 15 нового поколения.
Подписывайтесь на наш нескучный канал в Telegram, чтобы ничего не пропустить.