LINUX.ORG.RU

Ядро Linux 3.13

 


2

1

Линус Торвальдс объявил о релизе ядра 3.13. Внесено примерно 12 тысяч исправлений от 1339 разработчиков, около 44% всех изменений связаны с драйверами устройств, 14% связано с сетевым стеком, 4% - файловыми системами и 5% c внутренними подсистемами ядра. Наибольший вклад внесён Intel - 11.9%, существенный вклад также внесён: 9,7% - Linaro, 9% - Red Hat, 5% - Samsung, 3.5% - IBM, 2.7% - SUSE, 1.7% - Google, 1.5% - NVIDIA, 1.1% - Oracle, 1.0% - Huawei, 0.9% - ARM.

  • Добавлена интеграция пакетного фильтра Nftables, развиваемого для замены iptables, ip6table, arptables и ebtables;
  • По умолчанию включена поддержка режима быстрого открытия TCP-соединений (TFO - TCP Fast Open), который позволяет сократить число шагов установки соединения за счёт комбинирования в один запрос первого и второго шагов классического 3-этапного процесса согласования соединения;
  • В ipset добавлена поддержка сетевых пространств имён (network namespaces);
  • Добавлена поддержка протокола HSR (High-availability Seamless Redundancy) для создания высокодоступных резервных Ethernet-каналов, обеспечивающих сохранение работоспособности сети при выходе из строя одного из каналов без задержки на восстановление;
  • Для сетевых сокетов представлена поддержка опции SO_MAX_PACING_RATE, позволяющей приложению выставить значение максимальной интенсивности обработки пакетов на транспортном уровне;
  • В стек IPv4 для сокетов добавлена поддержка режима IP_PMTUDISC_INTERFACE, позволяющего игнорировать механизм Path MTU discovery, т.е. не принимать и устанавливать новую информацию Path MTU, а всегда использовать параметры MTU сетевого интерфейса для отправляемых пакетов;
  • В интерфейсы виртуальных туннелей IPsec (vti) добавлена поддержка IPv6;
  • Появилась возможность использования непривилегированными пользователями некоторых вызовов sysctl (например, /proc/sys/net/ipv4/ip_local_ports_range или /proc/sys/net/ipv4/icmp_echo_ignore_all) для изолированных сетевых пространств имён (network namespaces);
  • С целью эффективного использования возможностей современных SSD-накопителей в ядро включен новый блочный слой (Linux block layer), рассчитанный на организацию многопоточного доступа к данным на многоядерных системах;
  • Значительно ускорена работа специализированной файловой системы SquashFS, обычно используемой в качестве ФС для установочных образов, Live-систем и прошивок;
  • Для системы Bcache, которая позволяет организовать кэширование доступа к медленным жестким дискам на быстрых SSD-накопителях, добавлена поддержка инкрементального сборщика мусора, позволяющего свести к минимуму задержки при выполнении операций чистки кэша от устаревших элементов и повысить эффективность расходования места в кэше;
  • В модуле dm-cache, предназначенном для ускорения доступа к жестким дискам через применение кэширования на SSD-накопителях, добавлен режим сквозного проброса (passthrough), применяемого когда неизвестно насколько содержимое кэша согласовано с содержимым базового устройства;
  • В файловой системе Btrfs добавлена поддержка опций монтирования commit (задаёт интервал периодических коммитов, по умолчанию 30) и rescan_uuid_tree (инициирует процесс проверки и перестроения дерева UUID). Добавлен флаг FIEMAP_EXTENT_SHARED, позволяющий организовать совместное использование экстентов разными inode;
  • Для файловых систем SMB2/SMB3 добавлена поддержка клонирования файлов при копировании на стороне сервера (по аналогии с «cp --reflink»), а также возможность определения настроек сжатия для отдельных файлов (через «chattr +c filename»). Добавлена опция CONFIG_CIFS_STATS2 для сбора информации о сетевых адаптерах, что удобно использовать для отладочных целей;
  • Для F2FS представлена настройка CONFIG_F2FS_CHECK_FS, позволяющая отключить механизм проверки согласованности ФС на лету, влияющий на производительность;
  • Поддержка API Secure Element для организации выполнения защищённых операций с использованием протокола NFC;
  • Внесена серия улучшений в генератор псевдослучайных чисел: увеличена производительность, повышено качество энтропии, улучшена работа на платформах, отличных от х86;
  • Добавлено устройство KVM-VFIO, позволяющее огранизовать взаимодействие гипервизора KVM c построенными с использованием механизма VFIO драйверами устройств, работающих в пространстве пользователя;
  • Улучшения в SELinux: Обеспечена возможность установки контекста безопасности для rootfs (ramfs) в привязке к inode, что например может быть использовано для привязки метки к файлу, когда ФС не предоставляет обработчик xattr. Добавлен признак always_check_network, при включении которого всегда производится проверка пакетов и пиров, независимо от активности SECMARK и включения меток для пиров;
  • Добавлен Power Capping Framework, предоставляющий унифицированный интерфейс для управления настройками ограничения энергопотребления устройств из пространства пользователя;
  • Поддержка архитектуры Intel MIC (Many Integrated Core), используемой в сопроцессорах, имеющих форм-фактор карт PCIe и способных выполнять 64-разрядные экземпляры Linux;
  • Максимальное число CPU для архитектуры x86 увеличено с 4096 до 8192;
  • Для архитектуры ARM64 добавлена поддержка систем big-endian, горячего подключения CPU и 42-разрядного виртуального адресного пространства при использовании страниц памяти размером 64 Кб;
  • Поддержка GPU семейства «Hawaii» (R9 290X);
  • Стабилизирована и по умолчанию активирована поддержка динамического управления питанием и частотами (DPM) для большинства современных встроенных и внешних видеокарт Radeon;
  • Поддержка динамического включения и выключения дискретного GPU на базирующихся на технологии AMD PowerXpress ноутбуках с двумя GPU;
  • Внесены изменения, позволившие существенно увеличить производительность HD7000 и более новых GPU, поддерживаемых в Mesa Gallium3D-драйвером RadeonSI;
  • В DRM-драйвере Intel i915 появилась поддержка графической подсистемы процессоров на базе микроархитектуры Broadwell, которая придёт на смену Haswell;
  • В DRM-модуль Tegra добавлена поддержка 3D для Tegra20, Tegra30 и Tegra114. Для Tegra114 также добавлена поддержка HDMI;
  • Поддержка систем NVIDIA Tegra T124, Renesas r7272100, r8a7791;
  • Поддержка беспроводных адаптеров на базе чипов Qualcomm Atheros WCN3660/3680.

>>> Подробности (на английском языке)

★★★★★

Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 6)

А на opennet пишут про нововведение:

Добавлен новый фреймворк Generic PHY Framework для разработки драйверов для подключаемых устройств, в том числе внешних сетевых адаптеров, SATA и USB устройств

Расскажите про него, кто в курсе.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от user_id_68054

Ловил на ssd и hdd, причём получалось так, что 2 разных материнки с ssd - 12309, и те же материнки с hdd... Но. В моём случае это было только в kde, копирование через cp, mc, работали отлично.

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

Пока глубоко не тестил...

... выйдет gentoo-sources, там будем проверять.

На ванильном пока проблем не обнаружено. Но и в полном объёме так же не успели протестировать. Нужно немного больше времени.

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

Добавлю, пожалуй...

... к:

плохо-работающий чип материнской платы в сочетании с плохо-работающим HDD.

Плохо подобранный алгоритм планировщика ввода-вывода, плохо подобранная файловая система (например, дофига мелких файлов, создаваемых-удаляемых на xfs приводят к фрагментации ФС, тут либо включать авто-фрагментатор, встроенный в xfs, либо валить на reiser/ext4), плохо подобранная модель преемтивности (зачем вообще преемптивность на сервере?), ... В общем, плохо прочитанные материалы по конфигу ядра.

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

_раньше_ был стандарт имени Сильви. а вообще, есть kernel-newbies.

val-amart ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

Включаешь - не работает. Не нужен линукс Адобу, совсем не нужен.

а вроде как держали... в смысле, некоторые даже обертки велосипедили над libva чтобы в vdpau для флэшка подставить... :)

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от MiniRoboDancer

Ну, нет, у нас на старой убунте за три часа переваливало на AAO721. В принципе, нормально для недобука за 10Круб. Подсветка, конечно, тоже выкручена в ноль.

Да, на всякий случай, вдруг не приходилось сталкиваться: http://linrunner.de/en/tlp/docs/tlp-configuration.html

AlexM ★★★★★
()
Последнее исправление: AlexM (всего исправлений: 2)

С целью эффективного использования возможностей современных SSD-накопителей в ядро включен новый блочный слой (Linux block layer), рассчитанный на организацию многопоточного доступа к данным на многоядерных системах;

Что такое? Изменения заметны при использовании?

sehellion ★★★★★
()

Да хуй ложить кто больше закоммитил. От этого не спать слаще, не хуй больше. А вот за новость и труд спасибо. Узнал новое, как например nftables. У барышень прошу прошения за стиль повествования, не удержался увидав писькодавов с наездами на автора.

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

2 разных материнки

на самом деле — дурацких материнок может быть даже больше чем две :-)

user_id_68054 ★★★★★
()
Ответ на: Пока глубоко не тестил... от anonymous

выйдет gentoo-sources, там будем проверять.

интересно, где быстрее выйдет .. в gentoo-sources или в Арчике %) %)

[ разумеется неофициальщина от https://aur.archlinux.org/packages/linux-mainline — не считается ]

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

TLP не нужен. Это всё и в LMT настраивается, причём куда лучше. От TLP профит есть только на Θинкпадах.

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

У барышень прошу прошения за стиль повествования, не удержался увидав писькодавов с наездами на автора.

По сути вы правильно сказали, но все же зря так грубо.

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

Linaro — некоммерческая организация, занимающаяся консолидацией и оптимизацией программного обеспечения с открытыми исходными кодами для платформ ARM.

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

Таки да?

Я дико извиняюсь, но в оригинале именно максимальное количество ЦПУ, а не ядер ЦПУ? Я такой многопроцессорный монстр могу представить в стойке где-нибудь в Китае на Тиан Хе, их суперкомпьютере, который сейчас в Топе - №1. Но вообще этим по идее MPI занимается, есть коммутационные узлы, а есть внутри них лезвия с небольшим количеством процессором, ну сильно меньше 8192.

Woofywoof
()

Про Nftables почитал - выглядит весьма разумно.

«Максимальное число CPU для архитектуры x86 увеличено с 4096 до 8192» - что-то странное, всё более-менее современное железо х86_64, а старого с 8192 процами не встретишь.

«Поддержка динамического включения и выключения дискретного GPU на базирующихся на технологии AMD PowerXpress ноутбуках с двумя GPU» - это я буду брать следующий ноут с ATI, потому что оно _лучше_ поддерживает линух? Внезапно.

TCP Fast Open - гуд. Включил у себя, эффекта не заметно, но душу греет.

Итого - торт.

selivan ★★★
()

с появлением TCP Fast Open аббревиатура GTFO приобретает совершенно иной смысл :)))

zed_0xff
()
Ответ на: комментарий от Kosyak

Палец был по поводу того что NVidia никак не участвует в разработке открытых дров и сопутствующих им подсистем в ядре в отличии от Intel и AMD. Нвидиевцы пилят свой блоб отстранившись от всех, по принципу «все умрут, а я останусь».

anonymous
()

9,7% - Linaro

А говорят, что Linux разрабатывают в основном за деньги.

Напомню, «Linaro — некоммерческая организация, занимающаяся консолидацией и оптимизацией программного обеспечения»

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

А что, у некоммерческих организаций не может быть денег? Отличие не в этом, а в том, что их цель не получение прибыли. Деньги на разработку они могут тратить.

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

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

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от slowest_runner

Она не в том смысле некоммерческая. Не благотворительная. Это объединение коммерческих компаний для достижения какой-то цели.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от user_id_68054

Всё, ...

... заемерджилось gentoo-sources 3.13.0

Пользуясь случаем хочу поблагодарить ТС за проделанную работу. Спасибо, mbivanyuk.

По теме.

- Nftables пока не айс. И пока не нравится, возможно не осилил концепцию «простой виртуальной машины» для обработки трафика. Возможно, раскурю позже, но пока ну его на фиг.

TFO - TCP Fast Open

Это хорошо для случая хоста, у которого дофига исходящих соединений.

Добавлена поддержка протокола HSR (High-availability Seamless Redundancy)

Хорошо, но bound interface может делать почти тоже самое. Впрочем, надо тестировать.

SO_MAX_PACING_RATE

В коде вот так можно теперь (при FQ packet scheduler):

u32 val = 1000000;
setsockopt(sockfd, SOL_SOCKET, SO_MAX_PACING_RATE, &val, sizeof(val));

IP_PMTUDISC_INTERFACE

Спорная фича, пока неясно зачем. Если по http://patchwork.ozlabs.org/patch/286305/, то получается что:

Florian Weimer had the idea to use this flag to ensure DNS servers are

never generating outgoing fragments. They may well be fragmented on the path, but the server never stores or usees path mtu values, which could well be forged in an attack.

Ну разве что... Пока неясно, короче.

Улучшения в SELinux: Обеспечена возможность установки контекста безопасности для rootfs (ramfs) в привязке к inode, что например может быть использовано для привязки метки к файлу, когда ФС не предоставляет обработчик xattr.

Это хорошо.

/* Из того, что заинтересовало. */

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

... я не знаю кто из нас лошара, но я уже заемерджил. Даже кой-чего навскидку отписал. Или надо поставить новое ядро, но непонятно зачем? Абы поставить?

anonymous
()
Ответ на: Всё, ... от anonymous

SO_MAX_PACING_RATE

В коде вот так можно теперь (при FQ packet scheduler):

u32 val = 1000000;
setsockopt(sockfd, SOL_SOCKET, SO_MAX_PACING_RATE, &val, sizeof(val));

а что оно делает? соединение замедляет? [это я наугад сказанул:).. угадал?]

------------------------------------------------------------

а в Арчике — пока что неочень :(

user_id_68054 ★★★★★
()
Последнее исправление: user_id_68054 (всего исправлений: 1)
Ответ на: комментарий от Ttt

А API стабильного всё ещё не будет?

По 10 лет техподдержки в rhel это вовсе никак не стабильное API? А если тебе глобально и во всех дистрах то эту фичу ты будешь финансировать?

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

Не, ...

... не совсем так. Это значение (u32 val), насколько я понял, не

соединение замедляет?

Оно предлагает приблуде некую скорость (само по себе значение) на транспортном уровне. Пишется в байтах в секунду. Впрочем, может и замедлять и ускорять. Но, насколько я понял, будет зависеть от применяемого планировщика пакетов и значения MSS. Наверное, и заголовки учитывает. Надо будет проверить — чисто ли там значение или с учётом заголовков.

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

Я имею в виду чтобы у конкретной версии ядра был срок (ну, скажем, года 2-3), в течение которого API для драйверов будет стабильным. Либо он был предопределён при релизе, либо о поломке API становилось бы известно за несколько месяцев до выхода релиза с поломкой.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от teod0r

Слава тебе господи и отрубил свои и tmp у меня в ramfs... потому что мою систему 12309 рвет как тузик грелку. И да шетуд.

Trieforce
()
Ответ на: комментарий от Ttt

Если в этом...

... смысле, то боюсь что мы навряд ли увидим стабильный API. Сам страдаю от этого же, но по-моему единственный выход это как можно быстрее смотреть новые фичи в новом ядре (и новые косяки) и как-то к ним готовиться.

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

Получается только работать на опережение.

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

Не в порядке — нужно moar драйверов и прочего.

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