URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 119062
[ Назад ]
Исходное сообщение
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено opennews , 21-Ноя-19 11:29
Кес Кук (Kees Cook), бывший главный сисадмин kernel.org и лидер Ubuntu Security Team, ныне работающий в компании Google над обеспечением защиты Android и ChromeOS, подготовил экспериментальный репозиторий с патчами, позволяющими собрать ядро для архитектуры x86_64 с использованием компилятора Clang и активацией механизма защиты CFI (Control Flow Integrity). CFI обеспечивает выявление некоторых форм неопределённого поведения, которые потенциально могут привести к нарушению нормального потока управления (control flow) в результате выполнения эксплоитов...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=51909
Содержание
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,netricks, 11:40 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Medoed, 11:48 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Ordu, 11:50 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,кельвин, 13:41 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 16:33 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 17:17 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Ivan_83, 17:39 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 18:48 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 19:35 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 19:44 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 20:54 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 21:00 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Ivan_83, 01:47 , 23-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,nc, 08:06 , 26-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 11:59 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,пох., 12:15 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 14:54 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,evkogan, 17:33 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Ivan_83, 17:40 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 19:06 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Softwayer, 03:28 , 25-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 12:38 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 12:45 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 13:01 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 13:05 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 13:11 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 19:12 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,имя, 15:25 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 13:14 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 13:17 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,fooser, 14:26 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,fooser, 14:29 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 15:01 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 14:30 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 14:32 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,ан, 14:37 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 15:11 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 15:24 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 18:05 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 18:51 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним84701, 19:40 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 17:56 , 24-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 15:46 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 20:29 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 17:58 , 24-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 18:02 , 24-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Ivan_83, 17:42 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 18:00 , 24-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Вуыкло, 14:50 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Аноним, 15:14 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,НяшМяш, 16:15 , 21-Ноя-19
- Экспериментальная поддержка пересборки ядра Linux в Clang с ...,Вуыкло, 17:27 , 21-Ноя-19
Сообщения в этом обсуждении
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено netricks , 21-Ноя-19 11:40
Любопытно, там же куча кода написана с расширениями gnu... Как он это обошел?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Medoed , 21-Ноя-19 11:48
Clang умеет в большинство расширений GNU.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Ordu , 21-Ноя-19 11:50
Там не особо-то и используется, в смысле далеко не все расширения используются. Шланг же поддерживает некоторые из этих расширений.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено кельвин , 21-Ноя-19 13:41
вроде как написали врапер для каждого из ядровых GCCизмов, но это не точно.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 16:33
> Любопытно, там же куча кода написана с расширениями gnu... Как он это обошел?https://releases.llvm.org/6.0.0/tools/clang/docs/LanguageExt...
> In addition to the language extensions listed here, Clang aims to support a broad range of GCC extensions.
-std=<standard>
Specify the language standard to compile for.
...
gnu89
gnu90
ISO C 1990 with GNU extensions
...
gnu99
ISO C 1999 with GNU extensions...
gnu11
ISO C 2011 with GNU extensions
...
gnu17
ISO C 2017 with GNU extensions
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 17:17
А goto только на той неделе добавили...
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Ivan_83 , 21-Ноя-19 17:39
Враки, я goto в clang юзал ещё в 3.3 чтоли, и фряха бы без goto не собралась.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 18:48
> Враки, я goto в clang юзал ещё в 3.3 чтоли, и фряха
> бы без goto не собралась.Как ты его юзал интересно, если только в 9 добавили? Ври да не завирайся.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 19:35
> Как ты его юзал интересно, если только в 9 добавили? Ври да не завирайся.Наверное молча – добавленный "asm goto" != "C-goto" и сам по себе довольно специфичная штука.
https://bugs.llvm.org/show_bug.cgi?id=9295
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 19:44
>> Как ты его юзал интересно, если только в 9 добавили? Ври да не завирайся.
> Наверное молча – добавленный "asm goto" != "C-goto" и сам по себе
> довольно специфичная штука.
> https://bugs.llvm.org/show_bug.cgi?id=9295
>специфичная штукаДа вот только ядро без неё было не собрать. Об этом я и сказал изначально. Не такая уж и специфичная, просто не принято у нас писать на ассемблере (тем более на гнутом, логичнее сразу взять насм/фасм). Если бы больше программистов вручную оптимизировали свой высокоуровневый сишный код, эта фича могла бы быть более популярной.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 20:54
>>> Как ты его юзал интересно, если только в 9 добавили? Ври да не завирайся.
>> Наверное молча – добавленный "asm goto" != "C-goto" и сам по себе
>> довольно специфичная штука.
>> https://bugs.llvm.org/show_bug.cgi?id=9295
>>специфичная штука
> Да вот только ядро без неё было не собрать. https://lwn.net/Articles/734071/ (2017)
https://lwn.net/Articles/655544/ (2015)
> There are currently five patches needed in order to build a kernel for the x86 architecture.
--
> Об этом я и сказал изначально.
Все может быть -- но телепаты, увы, в отпуске.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 21:00
Странные ссылки. Это старые мамонтовые ядра, нынешним она вроде как обязательно нужна.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Ivan_83 , 23-Ноя-19 01:47
Не задумываясь, не было у меня проблем с этим, всё собиралось и работало.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено nc , 26-Ноя-19 08:06
Расширения gnu давно пора принять в стандарт языка. Простые и полезные.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 11:59
gcc капец? gcc-сец?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено пох. , 21-Ноя-19 12:15
в анально-огороженной инфраструктуре гуглозондов - да, давно к этому шло.Мэйнстримные линуксы как собирались gcc, так и будут, не плачьте.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 14:54
Ага, X-капец, SysVinit-капец, GCC-капец, ... Только они всё живут и здравствуют.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено evkogan , 21-Ноя-19 17:33
Еще совсем недавно производительность кода собранного шлангом сильно отставала.
Для ядра это особенно критично.
И я не верю что это уже победили.
Так что это шаг туда, но идти еще долго.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Ivan_83 , 21-Ноя-19 17:40
Там очень не очевидно с производительностью, потому что какие то вещи получаются быстрее какие то медленее.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 19:06
> Еще совсем недавно производительность кода собранного шлангом сильно отставала.
> Для ядра это особенно критично.https://www.phoronix.com/scan.php?page=article&item=gcc9-cla...
Отставание, как оно есть.
Ну и как раз в ядре без бенчей clang vs gcc как-то не очень верится в "критичную" разницу [работы ядра], ведь
такая "критичная" оптимизация (обычно) подразумевают значительную "трансформацию" изначального кода -- что как раз в ядре (обычно таки) совсем нежелательно.
См. "теплые отзывы" на "вумничание" того же gcc:
http://lkml.iu.edu//hypermail/linux/kernel/1407.3/00650.html
> Re: Random panic in load_balance() with 3.16-rc
> From: Linus Torvalds
> Lookie here, your compiler does some absolutely insane things with the spilling, including spilling a *constant*.
https://lore.kernel.org/patchwork/patch/773330/
> gcc-7 has an "optimization" pass that completely screws up, and generates the code expansion for the (impossible) case
https://lkml.org/lkml/2018/6/7/980
> Mark notes that gcc optimization passes have the potential to elide necessary invocations of this instruction sequence, so mark the asm volatile.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Softwayer , 25-Ноя-19 03:28
> Для ядра это особенно критично.Это ещё почему?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 12:38
Так это что, я наконец могу перестать говорить, что я использую "ГАНУСЛЭШЛИНУКС"???
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 12:45
да, когда сумеешь обойтись без mv, cp, cat, dd... и прочего гнутого шлака
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 13:01
Их уже переписывают на Rust?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 13:05
Их можно взять из BSD.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 13:11
Только если не пользоваться.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 19:12
> Только если не пользоваться.Не стесняйтесь аргументировать более, хм, подробно.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено имя , 21-Ноя-19 15:25
> Их уже переписывают на Rust?2014: https://www.opennet.dev/opennews/art.shtml?num=39989
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 13:14
Есть бсд версии этих утилит
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 13:17
Компилятор тут вообще ни при чём.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено fooser , 21-Ноя-19 14:26
с каких это пор busybox стал гнутым софтом?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено fooser , 21-Ноя-19 14:29
интересно, если я скомпиляю ведро линукса clang-ом, обвешу systemd, busybox, zsh и прочими негнутыми аналогами системного софта - я ж могу не называть Линукс гну/линуксом?кстати инетересно подсчитать сколько в современных дистрах осталось гнутого софта.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 15:01
Ну-ка расскажи нам, как ты ЛёнькоД заставишь работать с busybox и mucl?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 14:30
Действительно.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 14:32
А, я думал это ирония, а ты реально поехавший.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено ан , 21-Ноя-19 14:37
А зачем? Что это в идеале даст? Больше вопрос в целом о настойчивом желании собрать ядро клангом, чем защите CFI.
С переводом лисы на кланг время компиляции уменьшилось примерно в полтора раза, лиса стала пошустрее на старом железе, но по началу вылетала на js менюшках, сейчас вроде вылечили. Но ядро то зачем?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 15:11
"Мы шлангисты тоже так могём, мы крутые!"
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 15:24
Хотят перестать зависить от GNU. Android – это Non-GNU Linux.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 18:05
А зависимость теперь от Apple их не беспокоит? :-) Ворон ворону глаз не выклюет конечно, но по моему вряд ли в этом дело. Скорее верится в энергоэффективность и экономию на оплате электричества, для ДЦ это может быть заметно.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 18:51
>А зависимость теперь от Apple их не беспокоит? А нет никакой зависимости от Apple. У GCC рантаймовые компоненты либо под LGPLv3, либо используют хитрые условия про eligible compilation process, а у шланга все пермессивное.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним84701 , 21-Ноя-19 19:40
> А зависимость теперь от Apple их не беспокоит? :-) Ну, зависимость WebKit от Apple Гугла как-то не очень остановила ;)
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 24-Ноя-19 17:56
Ну так сказали же, ворон ворону глаз не выклюет.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 15:46
Ядро слишком долго компилируется. Они экономят электроэнергию. Корпорации очень беспокоят вопросы эффективности и сохранения природы (по этой же причине они используют угольные электростанции).
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 20:29
Вот минусуете, а ведь это основной "аргумент" сторонников шланга. :DИ в корпоративных презенташках а ля "зачем нам нужен шланг" тоже видел регулярно.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 24-Ноя-19 17:58
>сохранения природы
>угольные электростанцииЗдесь какое-то противоречие.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 24-Ноя-19 18:02
>>сохранения природы
>>угольные электростанции
> Здесь какое-то противоречие.Слишком тонко? Любой бизнес думает в первую очередь о прибылях и пользе для себя. И он совершенно не гнушается использованием ложных посылов, если это нравится обывателю.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Ivan_83 , 21-Ноя-19 17:42
Наверное линуксойдов заело что фряха собирается шлангом без патчей шланга, а линукс нет, вот и починили, как смогли :)
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 24-Ноя-19 18:00
Мне, как пользователю Linux, пофиг. Главное, что и дальше GCC собиралось, им и буду собирать.
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Вуыкло , 21-Ноя-19 14:50
Лучше б на Rust переписали
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Аноним , 21-Ноя-19 15:14
Что на Rust переписать, всё ядро? Лет за сколько тогда?
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено НяшМяш , 21-Ноя-19 16:15
Для них уже написали идеальную систему, но им всё равно мало... https://www.redox-os.org/
"Экспериментальная поддержка пересборки ядра Linux в Clang с ..."
Отправлено Вуыкло , 21-Ноя-19 17:27
Это был вовсе не сарказм, тебе не стоит переживать о своем IQ