Инструменты26 сентября 2026 г., 02:18 МСК🤖 Auto

Valve и Igalia: новые системные вызовы FUTEX для Steam Deck на ARM

Команда Igalia возобновила работу над патчами ядра Linux для эмуляции x86-игр на ARM64, устранив критическую ошибку гонки в системных вызовах FUTEX.

Баннер новости 8310

Возвращение к разработке: устранение Race Condition

После перерыва, связанного с необходимостью исправления критической ошибки гонки (race condition), компания Igalia представила обновленную версию патчей для системных вызовов get_robust_list2 и set_robust_list2. Эти изменения являются частью долгосрочной стратегии Valve по оптимизации работы Steam Play на архитектуре ARM64, что критически важно для устройств вроде Steam Deck и Steam Frame.

Технические детали обновления

Новая версия патчей, опубликованная разработчиком André Almeida, была перебазирована (rebased) на актуальное основное дерево ядра Linux. Ключевым техническим улучшением стала адаптация к изменениям в VDSO (Virtual Dynamically Linked Shared Object), что обеспечивает более стабильное взаимодействие между пользовательским пространством и ядром. Ранее разработка была приостановлена именно из-за необходимости корректной обработки состояний гонки в существующей реализации.

Значение для эмуляции FEX-Emu

Основная цель этих изменений — улучшение работы эмулятора FEX-Emu. Этот инструмент позволяет запускать игры, написанные для архитектур x86/x86_64, на процессорах ARM64. Существующие механизмы управления списками устойчивых списков (robust lists) в Linux имели недостатки, которые мешали эффективной работе эмуляции. Новые вызовы FUTEX призваны устранить эти узкие места, повышая производительность и стабильность геймплея.

Сводка изменений

Параметр Значение / Описание
Разработчик Igalia (André Almeida)
Целевая архитектура ARM64 (Steam Deck, Steam Frame)
Ключевые компоненты FEX-Emu, Steam Play, Linux Kernel
Исправленная проблема Race condition в старых версиях патчей
Техническая адаптация Совместимость с новыми изменениями VDSO

Почему это важно для геймеров

Успешное внедрение этих патчей в основное ядро Linux напрямую повлияет на количество совместимых игр, которые можно запускать на портативных консолях Valve без потери производительности. Оптимизация низкоуровневых системных вызовов позволяет эмулятору FEX-Emu быстрее обрабатывать системные запросы от игр, снижая задержки и предотвращая вылеты приложений. Это шаг к тому, чтобы «все игры для ПК» работали на Steam Deck так же хорошо, как и на нативных x86-системах.

Источник: Phoronix ↗