Проблема совместимости i915 и PREEMPT_RT
Внешние патчи для Linux с реальным временем (PREEMPT_RT) исторически требовали множества обходных решений для графического подсистема Intel. По данным Phoronix, почти половина всех патчей в очереди RT касалась именно драйвера i915. Основная причина конфликта заключалась в том, что основной веткой ядра Linux поддержка PREEMPT_RT для i915 была отключена, чтобы избежать нестабильности.
Разработчики Intel, в частности Maarten Lankhorst, работали над тем, чтобы интегрировать эти исправления в основную ветку ядра, избавившись от необходимости использовать внешние патчи.
Новый набор патчей: «работает хорошо», но с ограничениями
Сегодня Lankhorst опубликовал новую ревизию патчей на рассылку dri-devel. Цель серии — заставить модуль i915 «работать хорошо» (work well) в среде PREEMPT_RT. Однако есть важное уточнение: текущие исправления охватывают только базовую функциональность модуля без поддержки дисплейного вывода (display support).
Это означает, что драйвер сможет корректно обрабатывать прерывания и планирование в реальном времени для вычислительных задач, но графический вывод (композиция окон, рендеринг на экран) пока не будет функционировать в полной мере.
Технические детали и Kconfig
Несмотря на прогресс, разработчики пока не удалили строку конфигурации depends on !PREEMPT_RT из Kconfig файла драйвера. Это означает, что по умолчанию при сборке ядра с поддержкой PREEMPT_RT драйвер i915 все еще будет отключен, пока патчи не будут окончательно приняты мейнтейнерами ядра.
| Параметр | Текущее состояние | Статус в новых патчах |
|---|---|---|
| Поддержка PREEMPT_RT | Отключена (depends on !PREEMPT_RT) | Исправления готовы, но Kconfig не изменен |
| Дисплейный вывод (Display) | Не поддерживается в RT-режиме | Не включено в текущую серию патчей |
| Базовая функциональность i915 | Нестабильна | Исправлена («work well») |
| Остальные компоненты RT | Требуют доработки | Остались патчи для PowerPC |
Что дальше?
Интеграция этих патчей в основную ветку ядра Linux является ключевым шагом. Как только они будут приняты, очередь внешних RT-патчей сократится практически до нуля, за исключением некоторых специфичных исправлений для архитектуры PowerPC. Это упростит поддержку Linux с реальным временем для широкого круга пользователей, использующих оборудование Intel.
Источник: Phoronix ↗
