URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 80725
[ Назад ]

Исходное сообщение
"Список возможностей, которых не хватает в ядре Linux по мнен..."

Отправлено opennews , 11-Окт-11 14:58 
Кей Сайверс (Kay Sievers (http://linuxplumbersconf.org/2011/ocw/users/33)), Леннарт Поттеринг (Lennart Poettering (http://linuxplumbersconf.org/2011/ocw/users/729)) и Харальд Хойер (Harald Hoyer (http://linuxplumbersconf.org/2011/ocw/users/51)), работающие в компании Red Hat, от лица всех программистов, занимающихся разработкой низкоуровневых компонентов на базе Linux-систем, направили в дискуссионный лист разработчиков ядра Linux письмо (https://lkml.org/lkml/2011/10/6/395) со списком возможностей, которые хочется видеть в будущих версиях ядра, но на реализацию которых у авторов инициативы нет времени или возможностей.


Список наиболее интересных и заслуживающих внимания возможностей:


-  Интерфейс для запроса и модификации метки смонтированного FAT-раздела. В данный момент изменение метки, которая хранится в скрытой каталоговой записи внутри ФС, возможно только после размонтирования раздела и модификации его содержимого с помощью специальных инструментов.
-  Реализация m...

URL: https://lkml.org/lkml/2011/10/6/395
Новость: https://www.opennet.ru/opennews/art.shtml?num=31977


Содержание

Сообщения в этом обсуждении
"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 15:26 
> Простой способ изменения аргументов командной строки во время работы процесса, что может быть использовано для помещения в имя процесса полезной информации или приложениями, которые ветвятся для запуска другого бинарного файла.

А сейчас в чём сложность? Расскажите пожалуйста кто знает.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 16:19 
В том, что такая возможность желается нативно, в ядре. В большинстве никсов такого нет.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 16:21 
>А сейчас в чём сложность? Расскажите пожалуйста кто знает.

Как минимум, сейчас при модификации argv нужно вписываться в длину и количество изначальных аргументов. Например,
strncpy(argv[0], "new_name", strlen(argv[0]))

Если новое имя длиннее изначального, "хвост" придется обрезать, иначе повредится память.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено жопка3 , 11-Окт-11 16:44 
Тем что в линухе нет setproctitle(3), который есть в bsd.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено жопка3 , 11-Окт-11 18:42 
Нет, ну т.е. в линухе есть prctl с PR_SET_NAME, но он у меня срабатывал для top, но не для ps, например. В детали не лез.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 20:46 
Линух и БСД - разные ядра, не? В БСД пилят, что хотят, с маждонгом и гейшами.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 09:10 
Пасиба, кэп.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Michael Shigorin , 12-Окт-11 20:56 
> Тем что в линухе нет setproctitle(3), который есть в bsd.

Ох уж эти сказочники...  Если http://git.altlinux.org/people/ldv/packages/?p=setproctitle.git нет в каком-либо ином нужном линуксе, пишите письма его разработчикам.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено жопка3 , 12-Окт-11 22:48 
Разница между реализацией setproctitle в libc и в сторонней библиотеке не очивидна?
$ nm -D  /lib/libc.so.7  | grep setproctitle
0000000000047f10 T setproctitle

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 13-Окт-11 00:47 
>Разница между реализацией setproctitle в libc и в сторонней библиотеке не очивидна?

С точки зрения рогометания перед пацанами во дворе - вполне. С точки зрения реального использования - нет.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено СуперАноним , 11-Окт-11 22:08 
Допустим, вы написали приложение на скриптовом языке. И хотите, чтоб ps показывал имя приложения, а не имя интерпретатора. Вобщем, решение находится, но оно очень костыльное.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 23:33 
Имхо, этот вопрос должен беспокоить разработчика интерпретатора скрипта, а не авторов скриптов.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено XoRe , 12-Окт-11 16:16 
> Имхо, этот вопрос должен беспокоить разработчика интерпретатора скрипта, а не авторов скриптов.

А это кому больше надо?
Разработчикам perl, или тому, кто на этом perl пишет?


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 13-Окт-11 00:51 
> А это кому больше надо?
> Разработчикам perl, или тому, кто на этом perl пишет?

Хороший вопрос, так сразу и не ответишь.
Для простоты, возьмем условный оператор if в перле. Кому он больше нужен - авторам перла или авторам скриптов на перле?


"не знаю, как в ядре, а вот в глибси"
Отправлено Вова , 11-Окт-11 16:22 
лично мне не хватает аналога солярисовского gethrtime, штоп время узнавать без сискола. Меня не забанили на гугле,если что - я видел асмовские вставки. Хотелось бы иметь стандартный механизм.

"не знаю, как в ядре, а вот в глибси"
Отправлено жопка3 , 11-Окт-11 18:44 
> лично мне не хватает аналога солярисовского gethrtime, штоп время узнавать без сискола.
> Меня не забанили на гугле,если что - я видел асмовские вставки.
> Хотелось бы иметь стандартный механизм.

А разве в линухе gettimeofday(2), getpid(2) не реализованы как fast syscall's без переключения контекста и int 0x80? Вроде же для каждого процесса там шарится страница, в которой как раз доступны эти значения? Или нужен более точный таймер?


"не знаю, как в ядре, а вот в глибси"
Отправлено all_glory_to_the_hypnotoad , 11-Окт-11 19:59 
так вообще реализованы все сисколы в 2.6

"не знаю, как в ядре, а вот в глибси"
Отправлено жопка3 , 12-Окт-11 11:06 
Ога, fork(2) реализован без переключения контекста?)

"не знаю, как в ядре, а вот в глибси"
Отправлено Аноним , 11-Окт-11 20:48 
>> лично мне не хватает аналога солярисовского gethrtime, штоп время узнавать без сискола.
>> Меня не забанили на гугле,если что - я видел асмовские вставки.
>> Хотелось бы иметь стандартный механизм.
> А разве в линухе gettimeofday(2), getpid(2) не реализованы как fast syscall's без
> переключения контекста и int 0x80? Вроде же для каждого процесса там
> шарится страница, в которой как раз доступны эти значения? Или нужен
> более точный таймер?

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


"не знаю, как в ядре, а вот в глибси"
Отправлено Аноним , 11-Окт-11 21:52 
>реалтайм же поддежривается пингвинячьим ядром?

Пока только в linux-rt ветке


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 16:45 
http://catap.ru/blog/2011/06/15/linux-time-interval/

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Вова , 11-Окт-11 17:51 
это системный вызов (clock_gettime).

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено const86 , 12-Окт-11 01:01 
Этот сисвызов живёт в VDSO.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Вова , 12-Окт-11 09:40 
> Этот сисвызов живёт в VDSO.

А в Киеве - дядька. Вы прогуглили ключевые слова из ветки чуть выше? Это похвально.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 18:16 
Ваще давно пора разделить кернел на разные ветки - для десктопов, серверов и ещё различные типы компьютеров.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено anonymous , 11-Окт-11 18:46 
> Ваще давно пора разделить кернел на разные ветки - для десктопов, серверов и ещё различные типы компьютеров.

И для системных программистов ;)


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Crazy Alex , 11-Окт-11 19:42 
И получить через год пачку несовместимостей? Нет уж, спасибо. Линукс сейчас стандарт де-факто, и пусть он будет един.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 21:17 
> И получить через год пачку несовместимостей? Нет уж, спасибо. Линукс сейчас стандарт
> де-факто, и пусть он будет един.

В каком месте он стандарт и где он един? Пальцем ткни в дистровотч.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено СуперАноним , 11-Окт-11 22:34 
Linux это ядро, а не дистр. И таки vanilla kernel - стандарт.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено jud , 11-Окт-11 22:45 
ога, стандарт, особенно между версиями, офигенный стандарт, когда 2.6.19 и 3.0.1 это два совершенно разных ядра. в джёппу такие стандарты.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 23:38 
>ога, стандарт, особенно между версиями, офигенный стандарт, когда 2.6.19 и 3.0.1 это два совершенно разных ядра. в джёппу такие стандарты.

Ага. А еще POSIX.1 и POSIX.2 это два совершенно разных стандарта. В ту же задницу их.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено pavlinux , 12-Окт-11 05:09 
Что ты можешь сделать на 2.6.19, но не получается на 3.0.1 ?


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено all_glory_to_the_hypnotoad , 11-Окт-11 19:49 
из каких соображений появилась такая бредовая мысль?

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено tamerlan311 , 11-Окт-11 19:49 
Чем отличается десктоп от сервера, кроме абстрактного назначения?

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


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 18:35 
интересно, что не во всех свободных проектах прокатывает идея "собраться и написать всем свои идеи". Куча критики, типа, "если тебе надо, ты и делай!"
Собственно, куча критики будет и к этому посту.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 19:29 
А кто они такие? эти системные програмисты!
Враги какието! Зачем им фат???

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 23:59 
>Враги какието! Зачем им фат???

Тогда, главный враг - это Торвальдс. Который пропустил в ядро драйвер для FAT.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Анонимко , 11-Окт-11 19:55 
>Зачем им фат???

фат нужен хомячкам. А программистам за удовлетворение прихотей хомячков платют денюжку.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено xxx , 11-Окт-11 22:39 
>Кей Сайверс (Kay Sievers), Леннарт Поттеринг (Lennart Poettering) и Харальд Хойер (Harald Hoyer), работающие в компании Red Hat, от лица всех программистов

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

>Список наиболее интересных и заслуживающих внимания возможностей

Ну если это наиболее интересные и заслуживающие внимания возможности, то Роб Пайк пожалуй был прав ещё в далёком 2000-ом.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 22:55 
>А Леннарт всё не угомонится выступать от лица всех и вся. Ну чтож, жду с нетерпением, когда он начнёт говорить от лица Бога.

Вообще-то, это письмо составлено по итогам конференции системных программистов Linux Plubmers. И в качестве "гонцов" были выбраны трое наиболее авторитетных и уважаемых разработчиков.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 22:56 
s/Plubmers/Plumbers

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Mna , 11-Окт-11 23:00 
> если ..., то Роб Пайк пожалуй был прав ещё в далёком 2000-ом

В чем был прав Роб Пайк?
    


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 11-Окт-11 23:28 
А что, Сиверс уже в редхате работает? Afaik, полгода назад он работал в новелл и был одним из ведущих разработчиков суси.

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 00:32 
Кому что, а лично мне бы сейчас пригодилась возможность принципиально запретить перезагрузку, откладывая все попытки в какой-нибудь лог. Т.е. запретить всякие там /proc/sysrq-trigger и всё-всё-всё. Есть у меня одна конфигурация на базе linux 3.0-rt + drbd + xen, которая приводит к внезапным перезагрузкам без каких-либо объяснений причин. И дело не в железе, проверено :)

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 00:34 
Хотя, возможно, уже такое есть. Вполне допустимо, что я просто недостаточно тчательно искал. Кстати говоря, буду рад, если кто подскажет как такое сделать. ;)

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено pavlinux , 12-Окт-11 05:17 
> Хотя, возможно, уже такое есть. Вполне допустимо, что я просто недостаточно тчательно
> искал. Кстати говоря, буду рад, если кто подскажет как такое сделать.
> ;)

Не работай от рута.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 00:43 
>Кому что, а лично мне бы сейчас пригодилась возможность принципиально запретить перезагрузку, откладывая все попытки в какой-нибудь лог.

Еще хорошо бы запретить смерть, войну и голод, ага.

Если не хочется, чтобы система автоматически перезагружалась при панике - sysctl kernel/panic=0
Для вывода и сохранения лога при ошибках можно использовать netconsole.

>Есть у меня одна конфигурация на базе linux 3.0-rt + drbd + xen, которая приводит к внезапным перезагрузкам без каких-либо объяснений причин

А вообще, знаете вы толк в мазохизме. RT-ветка вовсе не позиционируется как стабильная.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 01:19 
>>Кому что, а лично мне бы сейчас пригодилась возможность принципиально запретить перезагрузку, откладывая все попытки в какой-нибудь лог.
> Еще хорошо бы запретить смерть, войну и голод, ага.

Вообще-то не вижу ничего сверхъестественного в отмене перезагрузок в большенстве ситуаций. Прошу простить мою тупость, конечно :)

> Если не хочется, чтобы система автоматически перезагружалась при панике - sysctl kernel/panic=0

Увы, конечно же, это уже пробовано. Проблема не в kernel panic, а в чём-то другом. А перезагрузка мгновенная, без каких-либо сообщений на экране.

>>Есть у меня одна конфигурация на базе linux 3.0-rt + drbd + xen, которая приводит к внезапным перезагрузкам без каких-либо объяснений причин
> А вообще, знаете вы толк в мазохизме. RT-ветка вовсе не позиционируется как
> стабильная.

Да, я в курсе.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 01:27 
>Вообще-то не вижу ничего сверхъестественного в отмене перезагрузок в большенстве ситуаций.

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

Разве что какое-то приложение из юзерспейса самопроизвольно командует или триггеры дергает - тогда да, такой запрет мог бы помочь. Но тут гораздо проще не давать рута кому попало. К конце концов, есть же capabilities.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 01:34 
>>Вообще-то не вижу ничего сверхъестественного в отмене перезагрузок в большенстве ситуаций.
> Похоже, что у вас перезагрузки происходят не из-за штатных механизмов обработки сбоев
> (в частности, таким механизмом является паника), а из-за каких-то ошибок в
> ядре. А ошибки как класс, запретить, к сожалению, нельзя.
> Разве что какое-то приложение из юзерспейса самопроизвольно командует или триггеры дергает
> - тогда да, такой запрет мог бы помочь. Но тут гораздо
> проще не давать рута кому попало. К конце концов, есть же
> capabilities.

Да, это понятно. Моя интуиция подсказывает, что проблема как-то связана с drbd. В дефолтном конфиге к drbd настроены аварийные перезагрузки, используя sysrq-trigger. В конфиге, конечно же, от этого уже ничего не осталось, однако окончательно разобраться было бы проще, если все штатные механизмы перезагрузок можно было бы временно заблокировать.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 02:01 
Если уж все равно собирается кастомное ядро - в данном случае можно отключить MAGIC_SYSRQ в конфиге ядра. Afaik, при этом файл sysrq-trigger создаваться не должен.

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


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено pavlinux , 12-Окт-11 05:20 
> Если уж все равно собирается кастомное ядро - в данном случае можно
> отключить MAGIC_SYSRQ в конфиге ядра. Afaik, при этом файл sysrq-trigger создаваться
> не должен.
> Но вообще идея добавить управление доступом к этому механизму, в свете вышесказанного,
> звучит вполне здраво.

В Debian есть MAGIC_SYSRQ_DEFAULT_MASK, задав определённую маску
можно запретить или разрешить только нужные коды.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 14:47 
>В Debian есть MAGIC_SYSRQ_DEFAULT_MASK, задав определённую маску можно запретить или разрешить только нужные коды.

Это везде есть. А еще эту маску можно поменять в рантайме через sysctl.
Только, увы и ах, на /proc/sysrq-trigger оно никак не влияет (если верить документации) - только на Magic SysRq Keys.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено pavlinux , 12-Окт-11 17:30 
>>В Debian есть MAGIC_SYSRQ_DEFAULT_MASK, задав определённую маску можно запретить или разрешить только нужные коды.
> Это везде есть.

В Debian и клонах.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 10:05 
> Если уж все равно собирается кастомное ядро - в данном случае можно
> отключить MAGIC_SYSRQ в конфиге ядра. Afaik, при этом файл sysrq-trigger создаваться
> не должен.

Ядро из репозитория.

> Но вообще идея добавить управление доступом к этому механизму, в свете вышесказанного,
> звучит вполне здраво.

Да, было бы здорово.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Xaionaro , 12-Окт-11 01:29 

> Для вывода и сохранения лога при ошибках можно использовать netconsole.

root@kordis:/home/xaionaro# locate netconsole.ko
/lib/modules/2.6.32-5-amd64/kernel/drivers/net/netconsole.ko
/lib/modules/2.6.32-5-xen-amd64/kernel/drivers/net/netconsole.ko
/lib/modules/3.0.0-1-amd64/kernel/drivers/net/netconsole.ko
root@kordis:/home/xaionaro# modprobe netconsole
FATAL: Module netconsole not found.
root@kordis:/home/xaionaro# uname -a
Linux kordis 3.0.0-1-rt-amd64 #1 SMP PREEMPT RT Sat Aug 27 17:34:31 UTC 2011 x86_64 GNU/Linux


Спасибо за совет, это действительно пригодится для других серверов. Но, конкретно на данной конфигурации, почему-то модуль отсутствует. Завтра разберусь :)


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено rm_ , 12-Окт-11 00:55 
> Леннарт Поттеринг

С этим челом надо поосторожнее, он придумал PulseAudio.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 12-Окт-11 01:12 
>С этим челом надо поосторожнее, он придумал PulseAudio.

Вы так говорите, как будто это что-то плохое.


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Anon21 , 12-Окт-11 21:55 
А вы таки видели код и даже что-то контрибьютили туда?

"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 13-Окт-11 00:56 
> А вы таки видели код и даже что-то контрибьютили туда?

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


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Аноним , 13-Окт-11 18:32 
> Нет, просто пользовался. Хорошая штука, добавляет много удобных фич для управления звуком.

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


"Список возможностей, которых не хватает в ядре Linux по мнен..."
Отправлено Michael Shigorin , 12-Окт-11 21:02 
> Реализация modalias для ветки sysfs /sys/devices/system/cpu/cpuX

Да, сильно недостаёт.