LINUX.ORG.RU

Вышло ядро Linux 3.6

 ,


1

3

После двух с половиной месяцев разработки вышла новая версия ядра Linux 3.6.

Среди прочих изменений следует отметить такие:

  • в файловых системах и подсистеме хранения данных:
    • для btrfs представлена поддержка квот для вложенных томов, а также механизм реализации инкрементных атомарных бекапов;
    • в ext4 переработана поддержка квот, а также увеличена производительность при перезаписывании файлов;
    • в xfs произведены многочисленные улучшения, в том числе повышена производительность;
    • улучшена безопасность при разыменовании символических и жёстких ссылок — теперь ядру можно запретить следовать по ссылкам в каталогах с установленным битом «sticky» (например, в /tmp);
    • добавлен новый интерфейс оповещения ядра утилитами пространства пользователя об изменении размера раздела с тем, чтобы эти изменения немедленно применялись ядром;
    • улучшена производительность комбинированных RAID-массивов, в составе которых есть диски SSD;
    • добавлена поддержка использования файлов подкачки через NFS;
    • в драйвер virtio-scsi добавлена поддержка горячего подключения/отключения дисков;
    • удалён демон пространства ядра pdflush в связи с переработкой подсистемы VFS;
  • в сетевой подсистеме:
    • добавлена поддержка буферов малых размеров для TCP во избежание чрезмерной буферизации данных во время передачи;
    • добавлена клиентская поддержка быстрого установления сессий TCP (серверная поддержка ожидается в следующей версии ядра);
    • расширен спектр поддерживаемых сетевых устройств;
    • в netfilter добавлена поддержка внешних обработчиков для подсистемы отслеживания соединений, что позволяет конструировать сложные обработчики событий в пространстве пользователя;
    • удалён кеш маршрутизации, приводящий к возможности осуществления атаки типа «отказ в обслуживании»;
  • в архитектуре:
    • расширено управление энергосбережением PCIe и ATA;
    • в драйвер intel_idle добавлена поддержка процессоров Ivy Bridge;
    • добавлена поддержка групп IOMMU, обеспечивающая более надёжную изоляцию устройств PCI и PCIe при использовании таких технологий виртуализации, как AMD-Vi и Intel VT-d;
    • добавлен фреймворк пространства пользователя VFIO, позволяющий эффективно пробрасывать устройства в гостевые системы;
    • улучшена производительность KVM;
    • в Xen добавлена возможность выключения отдельных CPU;
    • инфраструктура perf теперь позволяет получать информацию о производительности контроллера памяти и кеша L3 на процессорах Intel Nehalem и Sandy Bridge EP;
    • алгоритмы шифрования Serpent и Twofish теперь поддерживают ускорение с помощью использования ассемблерных инструкций AVX;
    • расширена поддержка платформ ARM и MIPS;
  • в драйверах:
    • улучшена поддержка Apple MacBook;
    • для драйвера Radeon теперь по умолчанию включен скоростной режим передачи PCIe 2.0;
    • расширена поддержка будущих процессоров Intel Haswell;
    • улучшена поддержка ресиверов DVB-T;
    • продолжена работа по реструктуризации подсистемы EDAC;
    • добавлен драйвер клавиатуры USB Lenovo ThinkPad;
    • расширен спектр поддерживаемых ноутбуков (в числе прочего включены патчи от gentoo_root для поддержки Lenovo IdeaPad Z570);
  • в инфраструктуре:
    • реализован механизм гибридного засыпания, при котором компьютер входит в S3, но предварительно содержимое памяти сохраняется на жёсткий диск; это позволяет обеспечить быстрое просыпание, но в случае потери электропитания во время сна позволит восстановить рабочее состояние системы с диска;
    • для генераторов псевдослучайных чисел (/dev/random и /dev/urandom) добавлены новые источники энтропии (MAC-адреса, информация DMI и USB);
    • улучшена поддержка EFI;
    • оптимизирован localmodconfig с целью исключения ненужных модулей;
    • добавлен контроллер cgroup HugeTLB;
  • также в ядро были внесены другие существенные (и не очень) изменения, которые невозможно полностью отразить в рамках формата такой новости.

Более подробно со списком изменений можно ознакомиться, пройдя по приведённым ниже ссылкам:

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

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

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

★★★★★

Последнее исправление: post-factum (всего исправлений: 7)

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

Вот у меня есть макбук

поздравляю. а у меня asus eee 1001pxd за 9 тыщ. и у меня тоже всё работает (кроме какой-то маркетоидной кнопки для венды) и всё удобно.

к ноуту нужна ракетная установка, у меня ее нет

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

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

к ноуту нужна ракетная установка, у меня ее нет

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

Нее, если будет поставляться ракетная установка в комплекте с макбуком, то дрова уже будут установлены на макось и при подключение все нарисуется. А вот с линуксом не нарисуется 100%, в самом лучшем случае обнаружится консольное студенческое поделие, изготовленное методом реверс-инжиниринга и работающее на 20% и глючащее, в худшем случае вообще ничего.

Одна из причин - постоянно ломающееся апи ядра.

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

Марк - б-г

Тогда почему в твей божественной вместо служб и иконок - демоны и значки?

PaxtonFettel
()

Прекрасные разработчики забыли поменять версию последнего stable.

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

Посмотрите вокруг, у большинства людей телевизоры на Linux, телефоны на Linux, роутеры на Linux, он просто с ног до головы опутан устройствами на Linux. :)

вы еще не на линуксе ?

тогда мы идем к вам

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

Вы прослушали постановление правительства Российской Федерации номер 2299-р

feofil
()
Ответ на: Тсс от anonymous

Нихрена не весело. Весело - это когда сходятся гуру и дискутируют на технические темы, а не «ты идиот!» - «нет, ты идиот!»

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

У ядра linux нет api для драйверов, это же монолитное ядро. А все, кто разрабатывает драйверы вне основной ветки - ССЗБ.

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

Тебе кажется. Такой график достаточно давно устоялся.

post-factum ★★★★★
() автор топика

актуально! будем пытать. особенно поддержка EFI радует

swlabr
()

добавлен драйвер клавиатуры USB Lenovo ThinkPad;

O_O

melkor217 ★★★★★
()

молодцы, много полезных изменений, надеюсь багов не наделали

GOD ★★★
()

«улучшена поддержка EFI»

Кто в курсе, поясните сие..? (ведро Aptosid, с утра приехало ихнего разлива 3.6). Пока не тестил, дома потрогаю, но таки интересуюсь :)

dv76 ★★★★
()

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

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

Подлизаться к модератору можно.

Если бы это ядро делал не модератор lor, то я бы начал использовать его ещё раньше, а после использования ещё некоторое время не стеснялся бы этого. :)

А из плюсов: uksm (я начал использовать только с 3.5, из-за uksm), обещанная поддержка отзывчивости (не заметил особо). На одном компьютере поставил - работает, вроде стало лучше и быстрее. После этого поставил везде, да и привык.

feofil
()

для генераторов псевдослучайных чисел (/dev/random и /dev/urandom) добавлены новые источники энтропии (MAC-адреса,...

дооо, MAC-адрес такой весь из себя рандомный и непредсказуемый

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

А ОТЗЫВЧИВОСТЬ И СКОРОСТЬ прилагаются? Или хотя бы надежда на них? :)

И на -pf есть реактивно обновляемый pkgbuild, с утра makepkg-билднул и порядок.

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

дооо, MAC-адрес такой весь из себя рандомный и непредсказуемый

Чтобы докопаться до этой фразы, тебе надо сначала почитать коммит. Я думаю, что мак-адрес там только для заполнения данных начальной энтропии, не больше, самому коммит лень читать.

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

У ядра linux нет api для драйверов

Есть. И этот API меняется мало.

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

Ты вроде отзывчивости и на пф не ощутил. Какие претензии?

с утра makepkg-билднул и порядок

ну тогда забудь.

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

diff --git a/net/core/dev.c b/net/core/dev.c
index 6df2140..bdd1e88 100644 (file)
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1172,6 +1172,7 @@ static int __dev_open(struct net_device *dev)
                net_dmaengine_get();
                dev_set_rx_mode(dev);
                dev_activate(dev);
+               add_device_randomness(dev->dev_addr, dev->addr_len);
        }
 
        return ret;
@@ -4763,6 +4764,7 @@ int dev_set_mac_address(struct net_device *dev, struct sockaddr *sa)
        err = ops->ndo_set_mac_address(dev, sa);
        if (!err)
                call_netdevice_notifiers(NETDEV_CHANGEADDR, dev);
+       add_device_randomness(dev->dev_addr, dev->addr_len);
        return err;
 }
 EXPORT_SYMBOL(dev_set_mac_address);
@@ -5541,6 +5543,7 @@ int register_netdevice(struct net_device *dev)
        dev_init_scheduler(dev);
        dev_hold(dev);
        list_netdevice(dev);
+       add_device_randomness(dev->dev_addr, dev->addr_len);
 
        /* Notify protocols, that a new device appeared. */
        ret = call_netdevice_notifiers(NETDEV_REGISTER, dev);
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index 21318d1..f058e59 100644 (file)
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -1378,6 +1378,7 @@ static int do_setlink(struct net_device *dev, struct ifinfomsg *ifm,
                        goto errout;
                send_addr_notify = 1;
                modified = 1;
+               add_device_randomness(dev->dev_addr, dev->addr_len);
        }
 
        if (tb[IFLA_MTU]) {

Я думаю, что мак-адрес там только для заполнения данных начальной энтропии, не больше

так и есть по ходу, но смысл этого действия? MAC-адрес часто пишется на самом устройстве и на коробке, 2 байта заранее известны по производителю, по партии можно вычислить приблизительный диапазон маков, возможных у какого-то конкретного юзера, купившего железку

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

На одном компьютере вроде ощутил, на другом вроде не ощутил. Ощущения - они вообще такие. :) Да и апстримное ядро сейчас уже достаточно хорошо.

Впрочем, pkgbuild и на uksm тоже есть. Если он будет вовремя обновляться - попробую и его. :)

Но вообще, конечно, такие вещи должны быть в апстриме.

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

Там написано «адреса». Судя по новости, я так понял, что это текущий arp-кэш.

по партии можно вычислить приблизительный диапазон маков, возможных у какого-то конкретного юзера, купившего железку

Ну так поместите в газете объявление «угадываю содержимое urandom по фотографии». Докажите это рублём. :)

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

ты в код смотри, а не в новость. ARP там никаким боком, при активации сетевого устройства в пул энтропии добавляется его собственный мак

Ну так поместите в газете объявление «угадываю содержимое urandom по фотографии». Докажите это рублём. :)

зачем в газету, лучше в NSA, вдруг на работу возьмут :)

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

так и есть по ходу, но смысл этого действия?

чтобы была бОльшая разница между разными компьютерами на старте, не более того. Не думаю, что можно так зная мак-адрес что-то там предсказать на самом деле.

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

ты в код смотри, а не в новость. ARP там никаким боком, при активации сетевого устройства в пул энтропии добавляется его собственный мак

Может быть, это не единственный патч на эту тему? Впрочем, не имеет значения.

зачем в газету, лучше в NSA, вдруг на работу возьмут :)

Да куда хотите. Можете хоть патч в ядро написать, если считаете текущую схему небезопасной. Но я пока не вижу, что существенного вам это даст.

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

Потому что userspace убогий. Примеры?

  • ifconfig, iwconfig, hciconfig, something-fucking-else-config вместо одного ifconfig.
  • iproute2, авторы которого не осилили даже man 3 printf, в результате чего вывод ss размазывает по всему терминалу, даже если этого не требуется. Однако, он всё равно(!) не влезает полностью.
  • Юзерспейсный bluez, завязанный по самые кишки на (та-дам!) dbus-е, что выливается в фееричное игнорирование major bits в device class в конфиге (а это, на минуточку, определяет способности устройства. И если ляптоп не заявляет всем вокруг, что он может принимать файлы, все считают что не может и отказыватся передавать). Выставить их можно либо руками (при каждой перезагрузке модуля, да), либо через dbus, для чего нам нужна тулза, которая использует dbus и через которую всем придется работать с bt устройствами (и которой, кстати говоря, у нас тоже нет).
  • X.org, авторы которого в очередной раз собрались переписать DRI, но так и не избавившие X'ы от необходимости пускаться под рутом.
  • Отсутствие нормального софта даже для создания initrd (разве что dracut, который приходилось патчить каким-то абсолютно левым чувакам, потому что разрабы в упор не видели баги).
  • systemd, в двух последних релизах которого присутствует очень большая вероятность поймать сегфолт (да котятки, инит сегфолтится) из-за кривого кода леннарта (он не смог правильно использоавть va_list, подробности в рассылке).

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

anonymous
()

Кто-нибудь использует вонильное ядро?

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