LINUX.ORG.RU

Вышло ядро Linux 3.15

 , ,


1

2

После почти двух с половиной месяцев разработки и восьми кандидатов в релизы вышла новая версия ядра Linux 3.15. С организационной точки зрения этот выпуск примечателен тем, что он состоялся в разгар двухнедельного окна приёма изменений для следующей версии, 3.16. Линус Торвальдс сообщил о проведении такого эксперимента в момент выпуска 3.15-rc8.

Технически же в новой версии произведена масса интересных изменений. Основные новинки ядра по категориям представлены ниже.

  • Файловые системы и подсистема хранения данных.
    • В XFS новый дисковый формат версии 5 признан стабильным. Также в этой ФС произведено обновление кода, отвечающего за fallocate и добавлена поддержка O_TMPFILE.
    • В ext4 произведена работа по улучшению масштабируемости. Также в код fallocate добавлена поддержка операций ZERO_RANGE и COLLAPSE_RANGE.
    • Увеличена производительность операций записи в FUSE.
    • Обновлен код kernfs с тем, чтобы его можно было использовать в большем количестве подсистем.
    • В код btrfs внесено множество изменений, направленных на исправление возможных повреждений данных. Также в btrfs отказались от собственной реализации асинхронных потоков в пользу стандартного механизма workqueues.
    • F2FS получила поддержку больших каталогов.
    • Представлен новый системный вызов renameat2, позволяющий атомарно поменять имена двух файлов.
    • Принят код, реализующий функцию приватной POSIX-блокировки файлов (file-private POSIX locks).
  • Инфраструктурный код.
    • Размер стека ядра на платформе x86_64 увеличен до 16 КиБ. Это связано с тем, что в ядре выявлены возможные сценарии, при выполнении которых 8 КиБ стека уже не хватает.
    • Добавлена частичная поддержка LTO (Link-Time Optimization). В будущем возможна полная поддержка LTO, что позволит несколько уменьшить итоговый размер образа ядра и повысить его быстродействие.
    • Принято множество патчей, позволяющих компилировать ядро с помощью clang. Добавлены не все патчи, часть недостающих изменений принята в 3.16, ещё одна часть запланирована на 3.17.
    • Добавлена поддержка смешанного режима EFI, благодаря которому появилась возможность загрузки 64-битного ядра с помощью 32-битного UEFI, что актуально для некоторых ноутбуков.
    • Добавлена поддержка инструкций AVX-512 и RDSEED, реализованных в процессорах Intel.
    • В код управления питанием добавлена поддержка асинхронного вывода из режима сна подсистемы SCSI, что позволило значительно сократить общее время просыпания.
    • В планировщике процессов продолжена работа по интеграции собственно планировщика и механизма выбора политики простоя (idle state) процессора. В 3.16 работа по улучшению интеграции ещё ведётся.
    • В коде cgroups произведена оптимизация переключения контекстов.
    • Внесены улучшения в код планирования процессов реального времени.
    • Переработан механизм балансировки списков активных и неактивных страниц в подсистеме управления памятью, что привело к заметному увеличению производительности при некоторых типах нагрузок.
    • Значительно переработан JIT-компилятор для фильтра пакетов BPF.
    • zram теперь может использовать алгоритм сжатия LZ4.
    • Удалена поддержка устаревших платформ x86: SGI Visual Workstation, Sequent Computer Systems NUMAQ, IBM Summit/EXA и IA32 Unisys ES7000.
    • Код PowerPC KVM теперь поддерживает транзакционную память для гостевых систем. В коде KVM для x86 исправлена поддержка OS X в качестве гостевой системы. Также в KVM улучшена поддержка Windows в качестве гостевой ОС.
  • Драйверы.
    • Для подсистемы драйверов реализована поддержка QoS управления питанием.
    • Подсистема AHCI (libata) переработана таким образом, что множество драйверов теперь могут повторно использовать один и тот же код без его дублирования. Также в libata добавлена поддержка асинхронных операций по управлению питанием.
    • В подсистему V4L добавлена поддержка множества новых устройств.
    • В драйвере Intel DRM произведено множество улучшений, связанных с управлением питанием, поддержкой дисплеев HiDPI и 4K DisplayPort. Также расширена поддержка чипов Broadwell.
    • В коде nouveau представлена начальная поддержка чипов Maxwell.
    • Драйвер Radeon теперь поддерживает кодирование видео VCE 2.0.
    • В код поддержки Samsung Exynos внесены изменения, направленные на поддержку многоплатформенных ядер. Работа над этим ещё не завершена.
    • Добавлена поддержка мультитач-устройств, разработанных специально для Windows 8.1.
    • Добавлена поддержка контроллера Dualshock 4, который используется в игровой консоли PlayStation 4.
    • Для ноутбука Lenovo ThinkPad Carbon представлена более полная поддержка клавиатуры.
    • В драйвер ACPI для ноутбуков Toshiba добавлена поддержка акселерометра и включения-выключения тачпада.
    • Произведены значительные улучшения в звуковой подсистеме, которые затрагивают HD Audio и чистку кода ASoC. Также добавлены драйверы для чипов Analog Devices ADAU1977, TI PCM512x, частично для CSR SiRF SoC, TLV320AIC31XXX, Armada 370 DB и Cirrus cs42xx8.
    • Добавлена поддержка чипа Realtek RTL8723AU (Wi-Fi).

Отдельно стоит упомянуть о том, что для включения в ядро предложены две интересные вещи.

  • ФС Tux3, разрабатываемая с 2008-го года. Несмотря на перспективность, код в ядро не включен из-за низкого его качества и нереализованности множества заявленных функций.
  • Планировщик ввода-вывода BFQ. Код уже получил хорошие отзывы в LKML, однако разработчиков просят доработать его с учётом некоторых замечаний. Также мейнтейнер блочной подсистемы чётко дал понять, что не собирается принимать в ядро ещё-один-CFQ, но в то же время готов заменить алгоритм CFQ на более разумную реализацию BFQ постепенно. Дискуссия и анализ кода BFQ в LKML продолжается. Прогнозов по срокам пока нет.

Конечно же, в новом ядре есть и множество других изменений, которые, к сожалению, не поддаются перечислению в рамках данной новости. Чтобы получить более детальную информацию о новшествах ядра, рекомендуется обратиться к указанным ниже источникам.

Скачать тарболл с исходным кодом

Скачать патч на ядро 3.14

>>> Официальный анонс

На счет BFQ круто конечно, да. Ждем ебилдов.

leg0las ★★★★★ ()

некоторых ноутбуках

Это тех некоторых, которые используют некоторые модераторы ЛОРа?

anonymous ()

В код управления питанием добавлена поддержка асинхронного вывода из режима сна подсистемы SCSI, что позволило значительно сократить общее время просыпания.

Я 3 месяца ждал. Теперь буду ждать ебилда.

zinfandel ★★ ()

Скоро для ядра нужно будет покупать отдельный жесткий диск.

fero ★★★★ ()

Урра, дядя Фёдор вернулся! 😸 Да здравствуют полные новости о ядре. Спасибо.

нучтож, попробую собрать это. А то 14 что-то было глючновато. А может это новьё драйвер на 1кгц таймере, на зен-ядре колбасило.

darkenshvein ★★★★★ ()

Выглядит многообещающе в отношении ФС. Когда ждём твой патчсет?

Bfgeshka ★★★★★ ()

Добавлена поддержка контроллера Dualshock 4, который используется в игровой консоли PlayStation 4.

Ето он!

ritsufag ★★★★★ ()
Ответ на: комментарий от anonymous

Сомневаюсь что кто-то из модераторов использует именно эти ноутбуки 6 летний давности.

anonymous ()

Вы не в курсе, последние проприетарные дрова NVidia его уже поддерживают или еще нет?

Rinaldus ★★★★★ ()
Ответ на: комментарий от fero

отдельный жесткий диск

Никогда не пробовали собирать в ядро только то, что нужно? make menuconfig для этого и придумали.

DeadEye ★★★★★ ()
Ответ на: комментарий от Rinaldus

поддерживаю вопрос о совместимости ядра с проприетарным блобом невидии.

funeralismatic ★★★ ()

интересно... таких жирных изменений давно не было в ядре.

к моему возвращению домой, наверняка, ебилды уже будут в дереве. :3

funeralismatic ★★★ ()
Ответ на: комментарий от darkenshvein

Никто ж не в состоянии написать приличную новость.

post-factum ★★★★★ ()

В этот раз как-то мало про видеодрайверы написано. Хотелось бы больше подробностей.

Khnazile ★★★★★ ()
Ответ на: комментарий от Khnazile

Пройди, пожалуйста, по ссылкам в конце текста новости.

post-factum ★★★★★ ()
Ответ на: комментарий от post-factum

Заблудился в ссылках на форониксе. Жутко не люблю их стиль: куча коротких статей, в которых ссылок больше, чем обычных слов.

Khnazile ★★★★★ ()
Ответ на: комментарий от post-factum

Насколько я сумел понять, VCE 2.0 есть только в самых новых картах АМД, т.е. с аппаратным кодированием видео даже обладатели HD7000 в пролете.

Khnazile ★★★★★ ()

Что эта минорщина делает на моем лоре?!?

anonymous ()

big.LITTLE

В код поддержки Samsung Exynos внесены изменения, направленные на поддержку многоплатформенных ядер. Работа над этим ещё не завершена.

Это про big.LITTLE? Скоро можно будет в простое нагружать 4 маломощных ядра, а во время напряжённых вычислений все 8, 4 слабых и 4 мощных? Или только либо те, либо другие?

Camel ★★★★★ ()
Ответ на: комментарий от funeralismatic

интересно... таких жирных изменений давно не было в ядре.

Это не релиз жирный, это новость хорошо написана :)

Stil ★★★★★ ()

Замечательная новость! Торвальдс хорошо проводит отпуск с семьей, раз столько новшеств появилось в ядре Linux. Правильно говорят, что отдых идет на пользу.

Rusell ()
Ответ на: комментарий от Novell-ch

В 7790 VCE1, на форониксе писали, что его «может быть допилят потом», правда писали довольно давно. VCE2, по идее, только в 2xx и свежих процессорах. К релизу допилили что ли?

Khnazile ★★★★★ ()

c 3.2 еще рано обновляться? подождем включения BFQ?

sehellion ★★★★★ ()
Ответ на: комментарий от Rinaldus

Ещё linux-mainline (вроде rc8) версию на арче с нвидией nvidia-full-beta-all (версию не помню) запустил без каких-либо проблем

nivs ()

Из-за amd'шного блоба вынужден сидеть на 3.13. И по ходу я на нём надолго :(

prv_cowboy ()

Добавлена поддержка мультитач-устройств, разработанных специально для Windows 8.1.

Что это за устройства?

CYB3R ★★★★★ ()
Ответ на: комментарий от Rognar

В гугле забанили? Вообще-то там и мануал не нужен, т.к. menuconfig интуитивно понятен.

CYB3R ★★★★★ ()
Ответ на: комментарий от DeadEye

Да какой английский, «Ядерной физике для домохозяек» 10 лет уже как.

anonymous ()
Ответ на: комментарий от Rognar

Ты зачем из бункера вылез и как сюда добрался?

anonymous ()

Принято множество патчей, позволяющих компилировать ядро с помощью clang. Добавлены не все патчи, часть недостающих изменений принята в 3.16, ещё одна часть запланирована на 3.17.

Сейчас уже можно собрать ядро шлангом?

sT331h0rs3 ★★★★★ ()

Закладок АНБ много ?

anonymous ()

А где почитать что именно добавили в V4L?

anonymous ()
Ответ на: комментарий от prv_cowboy

Можно пропатчить дрова для ядра 3.14, если есть необходимость. Возможно и для 3.15 патчи сделают.

kinik ★★☆ ()

Весьма вкусно, ждем первого багфикс релиза и можно брать!

Freiheits-Sender ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.