После двух с половиной месяцев разработки увидела свет новая версия ядра Linux 3.3.
В этом выпуске представлены следующие новшества:
- в сетевой подсистеме:
- добавлена поддержка агрегирования устройств Ethernet в виртуальное устройство (802.1AX);
- реализованы необходимые для работы Open vSwitch компоненты;
- добавлена возможность управления приоритетами сетевых ресурсов в рамках cgroup;
- представлены наработки, позволяющие контролировать объём данных в очереди на отправку;
- добавлен контроллер выделяемого объёма памяти для буферов TCP;
- драйвер Wi-Fi brcmsmac теперь использует bcma для обеспечения работы чипов, которые поддерживают технологию Broadcoms AMBA Interconnect;
- в драйвер ath9k добавлена поддержка динамического выбора частоты;
- драйвер hv_netvsc (для Hyper-V) переехал из staging в основной код сетевой подсистемы;
- в драйвер tg3 добавлена поддержка Broadcom 57766;
- драйвер virtio-net теперь поддерживает ACPI S4;
- в AQM добавлен механизм динамического изменения порога отбрасывания кадров в зависимости от объёма трафика;
- в ФС и подсистеме хранения данных:
- ext4 получила новый механизм быстрого изменения размера раздела «на лету»;
- произведено множество улучшений в коде XFS, что позволило значительно увеличить скорость работы с метаданными;
- в btrfs улучшен код балансировки данных, а также добавлены экспериментальные механизмы проверки целостности во время выполнения операций;
- в код поддержки софт-RAID добавлена возможность копирования данных с одного носителя на другой с последующим изъятием первого для горячей замены исправных компонентов массива без процедуры перестроения;
- добавлена поддержка протокола SCSI RDMA;
- улучшена поддержка SSD;
- добавлен новый ioctl для предоставления данных о наличии вращающихся компонентов в устройстве хранения данных;
- в архитектуре и инфраструктуре:
- реализована начальная поддержка сохранения работающих приложений на диск с целью переноса их на другую систему;
- в подсистему управления памятью внесены дополнительные исправления (некоторая их часть была принята в 3.2), устраняющие проблемы с производительностью при записи большого объёма данных на медленные носители;
- улучшена работа контроллера памяти cgroups;
- в KVM добавлен код для отслеживания производительности;
- в Xen добавлена поддержка надёжного удаления данных при выполнении операции discard;
- добавлена поддержка загрузки ядра напрямую с помощью EFI без использования загрузчика;
- добавлена базовая поддержка спецификации ACPI 5.0;
- код для ARM теперь поддерживает LPAE, что позволяет на 32-разрядных ARMv7 адресовать больше 4 Гб памяти;
- в код ARM добавлена подсистема аудита;
- также в коде ARM реализована базовая поддержка Tegra 3 SoC;
- произведены многочисленные улучшения в подсистеме криптографии;
- улучшена поддержка энергосбережения (ASPM);
- улучшена инфраструктура IOMMU;
- в драйверах:
- в nouveau добавлена поддержка новых чипов GeForce;
- технология энергосбережения RC6 для видеокарт Intel (Ivy Bridge) должна работать правильно без использования самого глубокого состояния (окончательное исправление поддержки RC6 для Sandy Bridge войдёт в 3.4);
- графический драйвер Poulsbo покинул область staging и перешёл в основной код;
- в драйвер vga_switcheroo добавлено множество функций для поддержки технологии Optimus;
- улучшен драйвер Radeon DRM/KMS, в том числе, в части управления памятью;
- множество драйверов Android внесено в область staging;
- добавлен механизм разделения буфера DMA несколькими драйверами;
- драйвер вывода звука, включенный в ALSA, теперь способен передавать данные устройствам в сжатой форме;
- в драйверах ATA улучшено энергосбережение;
- в ядро добавлен механизм контроля и управления зарядкой;
- и, конечно же, в новом ядре исправлено большое число ошибок, а также внесены другие изменения, значимые и не очень, но для которых не осталось места в новости.
Более подробно с нововведениями можно ознакомиться на ресурсе h-online.com: раз, два, три, четыре, а также читая ленту коммитов ядра.
Детальное описание новшеств простым английским языком доступно здесь, здесь, здесь и здесь.