Релиз ядра Linux 5.12 +4


AliExpress RU&CIS



Вчера, 25 апреля 2021 года, после двух месяцев разработки, Линус Торвальдс представил ядро Linux 5.12. Как пишет сам Торвальдс, эта версия — спокойная и без каких-то глобальных изменений. Более радикальный патч ожидается в версии 5.13, в которой разработчики будут «наверстывать упущенное». Само обновление вышло с недельной задержкой от графика.

Размер патча ядра — 38 Мб, а основные изменения в кодовой базе коснулись драйверов — на них приходится более 40% (43%) внесенных правок и обновлений. Примерно 17% изменений относятся к обновлению кода аппаратных архитектур, 12% — сетевой стек, 5% — файловые системы и 4% — внутренние подсистемы ядра.

Среди наиболее важных изменений и дополнений:

  • реализована поддержка зонированных блочных устройств в Btrfs;
  • Добавлена возможность маппинга идентификаторов файловых систем;
  • был очищен список устаревших ARM-архитектур;
  • реализован режим «нетерпеливой» записи в NFS;
  • добавлен механизм LOOKUP_CACHED — он определяет файловые пути из кэша;
  • поддержка атомарных инструкций в BPF;
  • добавлена отладочная система KFENCE для выявления ошибок при работе с памятью;
  • режим NAPI — пуллинг в сетевом стеке, теперь работает в отдельном потоке ядра процессора;
  • добавлен гипервизор ACRN;
  • реализована возможность изменения preempt-модели в планировщике задач «на горячую»;
  • добавлена поддержка LTO-оптимизаций при сборке в Clang.

С обширным разбором патча можно ознакомиться тут. Из наиболее заметного стоит отметить изменения в работе с внешними файловыми хранилищами других систем разметки/маппинга.

Теперь есть возможность сопоставить файлы на примонтированном чужом разделе с текущим разделом системы, то есть получить доступ к данным внешнего раздела. Новая система маппинга поддерживается для файловых систем FAT, ext4 и XFS. По задумке разработчиков, это должно упростить совместное использование файлов пользователей на разных компьютерах с разными операционными системами, в том числе и в рамках домашних каталогов systemd-homed. Также рассматривается сценарий предоставления совместного доступа к файлам с внешнего хоста без фактического изменения данных о файловой системе владельца данных. Последнее актуально в текущей ситуации массовой удаленной работы, когда часть инфраструктуры может работать под Linux, а конечные потребители — на Windows или MacOS.

Из облегчающих жизнь пользователей и дающих возможность тонкой настройки изменений стоит отметить новую подсистему DTMP (Dynamic Thermal Power Management). DTMP дает возможность динамически регулировать энергопотребление разных устройств на основе выставленных общих ограничений температуры. Актуально для тех же ноутбуков, которые используются в качестве рабочих станций.

Больше всего по объему кода патч затронул оборудование, конкретно — ARM и видеокарты. Из ядра вычистили драйвера и информацию о неактуальных и уже снятых с сопровождения ARM-платформах. Так, был удален код платформ и драйверы для efm32, picoxcell, prima2, tango, u300, zx и c6x.

Вместо них в систему добавили поддержку следующих ARM-устройств и платформ: PineTab, Snapdragon 888 / SM8350, Snapdragon MTP ,Two Beacon EmbeddedWorks, Intel eASIC N5X, Netgear R8000P, Plymovent M2M, Beacon i.MX8M Nano, NanoPi M4B.

В драйвере amdgpu теперь работает система разгона OverDrive для карт на базе GPU Sienna Cichlid: Navi 22, Radeon RX 6xxx. Также была добавлена поддержка пиксельного формата FP16 для DCE (display controller engine) с 8 по 11 поколение. Для GPU Navy Flounder (Navi 21) и APU Van Gogh реализована возможность сброса GPU.

В драйвере nouveau добавлена начальная поддержка GPU NVIDIA на базе архитектуры GA100 — это семейство ускорителей Ampere, которые ориентированы на массивные научные расчеты. На той же архитектуре реализованы видеокарты серии 3000 — RTX 3060 и до RTX 3090, и хотя A100 — это совершенно иное оборудование, вполне возможно, новый драйвер позволит корректнее работать новым видеокартам NVIDIA на ядре 5.12.

Из приятных мелочей: ядро Linux 5.12 теперь поддерживает консоли Nintendo 64, выпущенные с 1996 по 2003 год. Прошлые попытки портировать Linux для Nintendo 64 не были доведены до конца и имели статус Vaporware. Основная цель — упростить портирование и эмулирование классических игр и сохранить их как таковые. Также в ядро был добавлен драйвер для поддержки нового геймпада от PlayStation 5 DualSense.




Комментарии (6):

  1. Catslinger
    /#22968178 / +2

    Теперь есть возможность сопоставить файлы на примонтированном чужом разделе с текущим разделом системы, то есть получить доступ к данным внешнего раздела.

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

    Типичный Хабраперевод, бессмысленный и беспощадный. По описанию звучит как функция, которая была в Линуксе почти с момента его создания. (Монтирование сетевых ФС так же, как и локальных) Чтобы понять, так что же добавили, нужно идти гуглить — ну и зачем такой текст вообще нужен?


    Народ! Прекращайте плюсовать гугло-переводы только за то, что событие хорошее описано.

  2. yoda776
    /#22968370

    Больше всего по объему кода патч затронул оборудование, конкретно — ARM и видеокарты. Из ядра вычистили драйвера и информацию о неактуальных и уже снятых с сопровождения ARM-платформах. Так, был удален код платформ и драйверы для efm32, picoxcell, prima2, tango, u300, zx и c6x.

    Линукс всегда славился тем, что работал на любой древней железяке.
    Теперь все?

    • denisromanenko
      /#22968522 / +1

      Для древней железки используйте и линукс подревнее.

      • yoda776
        /#22968822

        Скоро они и 32-битную архитектуру выпилят.
        При этом до сих пор выпускаются ноутбуки с распаянными 1-2-4 гигабайтами ОЗУ, на которых только 32-битка будет хоть как-то шевелиться.
        Ну и еще кроме ПК линукс же еще много где используется, не в каждой кофеварке стоит i7, Snapdragon и т.д.
        В то же время они добавляют поддержку Nintendo 64, она ведь тоже мертвая и не поддерживается, и намного более древняя чем удаленная efm32.
        И потом, где брать эти древние линуксы? С официальных ресурсов старые релизы удаляются, остается их искать на левых торрентах и файлопомойках.

        • Aldrog
          /#22969008

          Линукс всегда славился тем, что работал на любой древней железяке.

          Думаю, всё-таки с уточнением: до тех пор, пока хоть кому-то это нужно.


          Скоро они и 32-битную архитектуру выпилят.

          Откуда такая информация?


          При этом до сих пор выпускаются ноутбуки с распаянными 1-2-4 гигабайтами ОЗУ, на которых только 32-битка будет хоть как-то шевелиться.

          А это точно так?
          Я замеров не делал, но по идее 64 бита могут давать небольшое увеличение потребления памяти, но при этом будут более эффективно использовать ресурсы цпу и шины памяти. Если подбирать софт так, чтобы не упираться в объём оперативки, то 64-битная система будет работать быстрее.

  3. red75prim
    /#22968666

    реализован режим «нетерпеливой» записи в NFS

    Переведу назад. Это — writes=eager: передача данных сразу на сервер без сохранения в кэше.