Как и ожидалось, этим воскресеньем во второй половине дня состоялся релиз новой версии ядра Linux 4.7. В этом ядре было реализовано большое количество интересных изменений и улучшений. Линус Торвальдс прокомментировал этот релиз так:
Несмотря на то, что с последнего RC7 релиза прошло только две недели, окончательный патч был небольшим, многие патчи состояли из одной или двух строк. Больше всего внимания получили сетевые драйвера и драйвера GPU, но есть и другие улучшения.
В этой статье я сделаю небольшой обзор нововведений этой версии ядра, а список этот довольно большой и интересный.
Графика:
Как обычно, у нашей любимой графической подсистемы особый, сложный цикл изменений:
- Новый драйвер HiSilicon Kirin DRM
- Новый драйвер дисплея Mediatek DRM
- Новый драйвер ARC PGU DRM
- Четвертый, и последний новый драйвер для DRM – драйвер дисплея Allwinner A13
- Драйвер AMDGPU получит начальную поддержку Polaris, а также несколько новых устройств
- AMDGPU получит некоторые улучшения производительности с оптимизацией GPUVM / scheduler / clock / PowerPlay, а также поддержкой асинхронной паганизации
- Много работы проделано над Intel DRM начиная от рефракторинга кода, до поддержки менеджера цвета.
- Улучшена DisplayPort++ для HDMI / DVI
- Nouveau DRM, открытый драйвер для видеокарт Nvidia получит поддержку GM108 Maxwell, улучшение управления питанием, а также другие исправления. Поддержки новой архитектуры Pascal пока что нет, но NVIDIA работает над поддержкой Pascal в Nouvau для GeForce GTX 1080 в ближайшее время.
- Драйвер Raspberry Pi’s VC4 DRM теперь имеет режим рендеринга и поддержку регулировки гаммы, а также поддержку панели DPI.
- В ветке DRM также есть и другие изменения. В код DRM было добавлено 80 000 строк кода, большая часть из них улучшение драйвера AMDGPU.
Процессоры и платформы
- Добавлена поддержка нескольких новых ARM платформ, включая главную платформу LG ARM (LG1312), ASpeed которая используется для контроллеров, макетную платформу OXNAS-MPS2, а также добавлена поддержка SoC. Также была улучшена поддержка Google Pixel C, ODROID C2, Amazon Kindle Fire, и GeekBox.
- Добавлен мониторинг мощности для AMD Carrizo APU и более новых моделей
- Поддержка KVM SVM AVIC для снижения накладных расходов прерываний при виртуализации x86 AMD. Это дает большую производительность во время виртуализации KVM на процессорах AMD.
- Поддержка платформы SGI Ultravioleet UV4
- Добавлен новый профиль Schedutil для управления частотой процессора ACPI CPUfreq. Он интересен тем, что использует данные планировщика ядра для определения оптимальной частоты процессора.
- Гибернация и режим сна теперь работает на аппаратном уровне для ARM64
- Добавлен PMC драйвер для Intel Core SoC.
Файловые системы
- Код ядра для работы с блоками теперь поддерживает асинхронный вывод
- Улучшения и исправления Btrfs и f2fs.
- Исправлено большое количество ошибок ext4
- Исправление ошибок XFS.
- Поддержка ZAC и магнитной записи с помощью Zone ATA Command.
Другое оборудование
- Множество улучшений сетевого стека и уменьшение излишней сетевой буферизации.
- Поддержка устройств ASUS и Corsair HID, включая K70R, K95RGB, M65RGB, K70RGB, и K65RGB
- Поддержка контроллеров Light Ridge Thunderbolt. Такие контроллеры часто использовались в продуктах Apple в 2011-2012 годах, а теперь наконец получили поддержку ядра.
- Поддержка новых чипов от Realtek, Skylake HDMI и других устройств.
- Microsoft Xbox One Elite Controller теперь поддерживается ядром Linux после патчей от Valve.
Другие улучшения
- Улучшения драйвера для управления загрузчиком EFI и обновление EFI капсулы.
- Обновление планировщика
- Поддержка ACPI 6.1
- Атомарный интерфейс для PWM
- Функция безопасности LoadPin, которая была перенесена из ChromeOS и позволяет ограничить загрузку модулей ядра и прошивок.
- Добавлена опция CONFIG_TRIM_UNUSED_KSYMS, которая позволяет удалить неиспользованные экспортированные символы ядра, что уменьшит его размер при компиляции.
- Поддержка управления подсветкой клавиатуры для Chromebook.
Вы уже можете скачать исходники ядра с официального сайта, собрать его и установить в своей системе.