The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Представлен Tyr, Linux-драйвер для GPU ARM Mali, написанный на Rust"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Представлен Tyr, Linux-драйвер для GPU ARM Mali, написанный на Rust"  +/
Сообщение от opennews (??), 28-Июн-25, 14:56 
Дэниел Алмейда (Daniel Almeida), занимающийся развитием видеокодеков в компании Collabora, опубликовал в списке рассылки разработчиков Linux-ядра начальную реализацию драйвера Tyr для GPU  ARM Mali, в которых применяется технология CSF (Сommand Stream Frontend), таких как Mali G310, G510 и G710. Код драйвера написан на языке Rust  и насчитывает чуть больше 600 строк кода. Работа над драйвером Tyr ведётся совместно сотрудниками компаний Collabora, Arm и Google...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=63490

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

3. Сообщение от Кошкажена (?), 28-Июн-25, 14:59   +14 +/
600 строк кода, а шуму то...
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #5, #9

4. Сообщение от Аноним (4), 28-Июн-25, 15:01   +/
>и G710

т.е. второй Тензор:
https://en.wikipedia.org/wiki/Google_Tensor#Models

Ответить | Правка | Наверх | Cообщить модератору

5. Сообщение от Вандер (?), 28-Июн-25, 15:01   +5 +/
Это 600 строк правильного кода, а не всякого там не правильного
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #7, #80

6. Сообщение от Аноним (-), 28-Июн-25, 15:03   +5 +/
У... что сейчас начнется))

А так, отличная новость.
Ядерщики конечно тормозят знатно, но патчи в ядро заходят.
И смотря на участников - Collabora, Arm и Google - становится ясно, что они дожмут.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8

7. Сообщение от Кошкажена (?), 28-Июн-25, 15:03   +13 +/
unsafe на месте
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #11

8. Сообщение от Вандер (?), 28-Июн-25, 15:06   +3 +/
Линух протух сразу как был форкнут с Миникса, вот туда и заходит всякое
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #19, #32

9. Сообщение от Аноним (-), 28-Июн-25, 15:07   –2 +/
>  600 строк кода, а шуму то...

А тут сам факт важен. Сколько раз использовался аргумент у противников раста в ядре что "ни одного драйвера на расте нет". А теперь он инвалидирован, можно спрашивать "а почему им разрешили, а нам нет?" Ну и следующие патчи уже в пути.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #10, #48

10. Сообщение от Кошкажена (?), 28-Июн-25, 15:09   +3 +/
>>  600 строк кода, а шуму то...
> А тут сам факт важен.

Вот я про то же. Скоро будут писать как раст-разраб сходил поел.

> Сколько раз использовался аргумент у противников раста в ядре что "ни одного драйвера на расте нет".

Ну рабочего нет. Ничего не поменялось.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #40, #87

11. Сообщение от Аноним (-), 28-Июн-25, 15:10   +3 +/
> unsafe на месте

Целых три ансефа на все изменения.
lore.kernel.org/dri-devel/20250627-tyr-v1-1-cb5f4c6ced46@collabora.com/

Ну и понятно почему
// This type is the same type exposed by Panthor's uAPI. As it's declared as
// #repr(C), we can be sure that the layout is the same.

Это же понятно, что везде, где придется взаимодействовать с богомерзкой, придется добавлять unsafe

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #13, #14, #77

12. Сообщение от Аноним (13), 28-Июн-25, 15:16   +3 +/
> насчитывает чуть больше 600 строк кода

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

> +// SAFETY:

Иконка под стекло. Бгг.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #34

13. Сообщение от Аноним (13), 28-Июн-25, 15:20   +7 +/
> Целых три ансефа на все изменения.

Либы посчитай. Не-unsafe кода там в принципе нет.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #16

14. Сообщение от Кошкажена (?), 28-Июн-25, 15:23   +/
> Ну и понятно почему
> // This type is the same type exposed by Panthor's uAPI. As it's declared as
> // #repr(C), we can be sure that the layout is the same.

Это всего лишь 1 unsafe. А эти для чего

+unsafe impl Send for TyrData {}
+unsafe impl Sync for TyrData {}

?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #24, #39, #81

16. Сообщение от Аноним (13), 28-Июн-25, 15:24   –3 +/
А с учётом этого(https://github.com/Speykious/cve-rs) не-unsafe даже в мечтах не возможен.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #20, #21, #38, #68

17. Сообщение от Кошкажена (?), 28-Июн-25, 15:25   +1 +/
Что означает лицензия SPDX-License-Identifier: GPL-2.0 or MIT? Можно выбрать? Как это работает?
Ответить | Правка | Наверх | Cообщить модератору

19. Сообщение от Аноним (19), 28-Июн-25, 15:35   +/
Альтернативы?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #26, #30

20. Сообщение от Аноним (-), 28-Июн-25, 15:38   +3 +/
> А с учётом этого(https://github.com/Speykious/cve-rs) не-unsafe даже в мечтах не возможен.

Уже давно исправлено, смени методичку.
github.com/Speykious/cve-rs/issues/3

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #22

21. Сообщение от Аноним (49), 28-Июн-25, 15:41   +2 +/
> А с учётом этого(https://github.com/Speykious/cve-rs) не-unsafe даже в мечтах не возможен.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #25

22. Сообщение от Аноним (13), 28-Июн-25, 15:47   +/
Не исправлено. Этого нет в языке, а заявляется безопасность языка, а не левой поделки. С таким же успехом в си нет уб. Да и где угодно нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #49

24. Сообщение от Аноним (49), 28-Июн-25, 15:49   +2 +/
>> Ну и понятно почему
>> // This type is the same type exposed by Panthor's uAPI. As it's declared as
>> // #repr(C), we can be sure that the layout is the same.
> Это всего лишь 1 unsafe. А эти для чего
> +unsafe impl Send for TyrData {}
> +unsafe impl Sync for TyrData {}

Вам там че, запретили, под страхом отлучения от опеннета, глядеть в доки?
https://rust.docs.kernel.org/core/marker/trait.Send.html
> Types that can be transferred across thread boundaries.
> Types for which it is safe to share references between threads.
> This trait is automatically implemented when the compiler determines it’s appropriate.
> The precise definition is: a type T is Sync if and only if &T is Send. In other words, if there is no possibility of undefined behavior (including data races) when passing &T references between threads.
>

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #37

25. Сообщение от Аноним (13), 28-Июн-25, 15:49   +/
Как хорошо, что тебе с первого же тейка нечего ответить и ты показал свою "квалификацию" :)
Т.е. можно смело игнорить очередные, отчаяные оправдания очередного, опеннетного кексперта.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #27

26. Сообщение от Аноним (4), 28-Июн-25, 15:58   +/
https://opennet.ru/63382-freebsd
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #31

27. Сообщение от Аноним (49), 28-Июн-25, 16:00   +1 +/
> Как хорошо, что тебе с первого же тейка нечего ответить и ты
> показал свою "квалификацию" :)

Не, кексперт - просто тебе и подобным уже отвечали на это 100500 раз и каждый раз вы почему-то сливались :)

https://www.opennet.me/openforum/vsluhforumID3/133387.html#122
https://opennet.ru/openforum/vsluhforumID3/133278.html#28
https://www.opennet.me/openforum/vsluhforumID3/134910.html#249
https://www.opennet.me/openforum/vsluhforumID3/136952.html#161
https://www.opennet.me/openforum/vsluhforumID3/136093.html#86
Но ты можешь попытаться выдать что-то, отличное от "вы фсе врети!", все в твоих руках.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

30. Сообщение от Аноним (30), 28-Июн-25, 16:10   +/
https://genode.org/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

31. Сообщение от Аноним (-), 28-Июн-25, 16:16   +1 +/
> https://opennet.ru/63382-freebsd

Круто. А дрова все еще с линукса тырить будете?
А если они на расте будут, то что?))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #36, #64

32. Сообщение от Аноним (-), 28-Июн-25, 16:18   +/
Линукс написан с нуля и имеет лицензию копилефт.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #98

34. Сообщение от нах. (?), 28-Июн-25, 16:44   –2 +/
Это ты еще не вчитывался:

> Функциональность для взаимодействия с GPU Mali портирована из существующего DRM-драйвера
> Panthor (Direct Rendering Manager), написанного на языке Си. uAPI драйвера Tyr идентичен
> uAPI драйвера Panthor, что позволяет использовать с ним уже существующие компоненты
> пространства пользователя.

т.е. собственно - драйвер, а не переключалку графрежимов.

И при всем при этом - мы переписькивали-переписькивали, но... уот:

> Функциональность Tyr пока отстаёт от драйвера Panthor,

т.е. еще и нихрена не работает (потому что mali и так ничего особенного не умеет)

В общем, хрустики пробивают очередное дно, но тут снизу настойчиво стучат.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

36. Сообщение от нах. (?), 28-Июн-25, 16:50   +/
> А если они на расте будут, то что?))

то вот примерно это:

> Технология CSF, применяемая начиная с 10 поколения GPU Mali, примечательна выносом на
>  сторону прошивки некоторых функций драйвера и задействованием новой модели организации
> Функциональность Tyr пока отстаёт от драйвера Panthor,

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

Ну и зачем кому-то сдалось "тырить" такой драйвер? Подождем пока microsoft для embedded windows свой напишет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #47

37. Сообщение от Кошкажена (?), 28-Июн-25, 16:51   +/
Ну вот и о какой тогда безопасности речь? Сами себе противоречите.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #41, #62

38. Сообщение от morphe (?), 28-Июн-25, 16:57   +1 +/
> А с учётом этого(https://github.com/Speykious/cve-rs) не-unsafe даже в мечтах не возможен.

Ну конечно, давайте сравнивать баги в компиляторе которые постепенно исправляют (https://github.com/rust-lang/rust/issues/25860, https://github.com/Speykious/cve-rs/issues/3) с UB который в сях есть по стандарту и который в общем случае не фиксится и не детектится ни на чьей стороне

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #45

39. Сообщение от morphe (?), 28-Июн-25, 17:01   +3 +/
Это код биндинга к сям

Компилятор Rustc видит там сырые указатели, и разумеется не понимает контекст к ним
Будут ли эти указатели валидны при передаче в другой поток, или они ссылаются на thread-local? Можно ли с этими указателями работать из нескольких потоков одновременно, или нужна синхронизация?

Вот на стороне Rust и прописывают явно что там нам из сей вернуло, а именно то что эта структура ссылается на общие данные и не теряет смысла при передаче между потоками (Send), и то что в этой структуре нет мутабельных данных, она thread-safe, а соответственно синхронизация не нужна, и с ней можно работать из нескольких потоков (Sync)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #42

40. Сообщение от paulus (ok), 28-Июн-25, 17:01   +2 +/
>Ну рабочего нет. Ничего не поменялось.

зато готовы добавить дополнительную кучу абстракций в ядро :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #78

41. Сообщение от Аноним (49), 28-Июн-25, 17:02   +/
> Ну вот и о какой тогда безопасности речь? Сами себе противоречите.

Я не в курсе ваших фантазий и уж тем более, что и чему там противоречит, увы.


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

42. Сообщение от morphe (?), 28-Июн-25, 17:04   +1 +/
Для структур что описаны целиком в Rust, и которым не нужно общаться с сишным кодом маркеры Send/Sync не нужны, потому что компилятор сам в состоянии вывести/доказать оба требования, проблемы идут только с вещами что компилятор не понимает - что там сишка своим API показать хотела
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39

44. Сообщение от Аноним (44), 28-Июн-25, 17:09   +/
Чё, молодцы, упразднение опенсорсных драйверов идёт полным ходом под радостное хлопанье сопровождающих - им драйвера как кобыле пятая нога. Скоро будем созерцать "подключите девайс к Интернету, пройдите TEE-аттестацию и оплатите подписку для разблокировки 3D-возможностей".
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #55

45. Сообщение от Аноним (13), 28-Июн-25, 17:13    Скрыто ботом-модератором–3 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38

47. Сообщение от Аноним (-), 28-Июн-25, 17:20   +2 +/
> то есть казалось бы, днище, падать некуда, и так от драйвера остался
> копипастинг блобов туда-сюда. Но нет, снизу стучат.

Ну так сами своими гнутыми выбрыками с Ж0п0эль символами достали производителей железа.
Это нормально в патч-версии обновлении ядра ломать дрова?
Вот теперь кушаейте прошивку на чипах видяхи. А "свободный гнутый" драйвер будет ее туда просто свободно и гнуто грузить.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #50

48. Сообщение от нах. (?), 28-Июн-25, 17:20   +1 +/
так драйвер мигания светодиодиком уже ж давно есть.
Правда, он там для собственно мигания вызывает небезопастный си-код...а, стоп, тут такая же хрень.

Интересней тут другое - наш дЭффективный менеджер всяго линукса поднимал визг в сотни децибел при попытке подсунуть ему код, дублирующий то что уже и так работает, и работает - хорошо. (Вместо замены с внятными объяснениями, зачем надо менять.)

А тут молчит и проглатывает.

Видимо, миллион долларов в месяц сам себя не выплатит.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

49. Сообщение от Аноним (49), 28-Июн-25, 17:20   +1 +/
https://doc.rust-lang.org/cargo/commands/cargo-miri.html
https://github.com/rust-lang/miri
> move of the Miri engine into the compiler finally came to completion in early 2018.

...

> Этого нет в языке, а заявляется безопасность языка, а не левой поделки.
> левой поделки

Кекспертиза изо всех щелей ...


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #51

50. Сообщение от нах. (?), 28-Июн-25, 17:22   +2 +/
> Вот теперь кушаейте прошивку на чипах видяхи. А "свободный гнутый" драйвер будет
> ее туда просто свободно и гнуто грузить.

так он, %@%@^#%^ и ЭТО тоже умудряется делать криво!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

51. Сообщение от Аноним (13), 28-Июн-25, 17:26   +/
> Этого нет в языке, а заявляется безопасность языка
> into the compiler

Кекспертиза изо всех щелей ...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #54, #58

52. Сообщение от Аноним (52), 28-Июн-25, 17:32   +/
Rust в Linux как бетонный каток диет по асфальту - медленно но верно! Процент кода Rust в ядре Linux будет только увеличиваться!
Но конечно же, вы всегда можете сделать форк ядра Linux без Rust)
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #59, #61, #63, #82, #83

54. Сообщение от Аноним (49), 28-Июн-25, 17:52   +2 +/
>> Этого нет в языке, а заявляется безопасность языка
>> into the compiler
> Кекспертиза изо всех щелей ...

Кекспертушка, ты же осознаешь, что на самом деле -- ссылался на баг в компиляторе? Потому что в "языке", внезапно, "оно" есть.
> So far, all our bugs are implemented using a single soundness hole in the Rust compiler.
> The explanation is detailed in the lifetime_expansion module.

Или ты по своей же ссылке (как обычно) - дальше заголовка не читал?

https://github.com/Speykious/cve-rs/blob/main/src/lifetime_e...


# How it works
//!
//! There is a soundness hole in the Rust compiler that allows our domain expansion to work.
//!
//! In the [`expand`] function, we use [`lifetime_translator`] with [`STATIC_UNIT`],
//! which has a `'static` lifetime, allowing us to translate an arbitrary lifetime
//! into any other lifetime.
//!
//! `rustc` *should* infer that one of the lifetimes does not outlive `'static`, so
//! that we can't use [`lifetime_translator`]; however, for whatever reason, it doesn't,
//! so this exploit works.
//!

И вот так, с вами, кекспертами - каждый раз.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #60

55. Сообщение от Аноним (55), 28-Июн-25, 17:54   –1 +/
> подключите девайс к Интернету, пройдите TEE-аттестацию и оплатите подписку

А какие минусы?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44

58. Сообщение от morphe (?), 28-Июн-25, 18:11   +3 +/
>> Этого нет в языке, а заявляется безопасность языка
>> into the compiler
> Кекспертиза изо всех щелей ...

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

Lexical lifetimes -> non-lexical lifetimes (Это то что сейчас использует компилятор rustc по дефолту) -> stacked borrows -> tree borrows (Это то что может поймать любую подобную мискомпиляцию)

Подчиняться компиляторы должны tree borrows, однако дополнительно валидировать на уровне компилятора не выйдет, потому что он требует pointer provenance, условно с каждым указателем нужно носить дополнительные данные, железный аналог подобного - CHERI, а в Rust есть MIRI который используется для comptime вычислений, но который в том числе можно использовать и для того чтобы исполнять всю программу (пускай и медленно, ведь это интерпретатор Rust)

С cve-rs мы наблюдаем что валидатор (miri) багу ловит, а компилятор на неё не жалуется и позволяет нарушать гарантии. Почему он не жалуется? Потому что в компиляторе есть несколько багов, из за которых он пока не подчиняется tree borrows.
Так что в данном случае наоборот, у нас в языке всё это исправлено, а вот компилятор пока отстаёт.

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

В частности, cve-rs хоть и демонстрирует несколько уязвимостей (use after free, type confusion, buffer overflow, null pointer dereference), однако под капотом у всего этого лежит лишь один баг компилятора, который воспроизводится так:

pub const STATIC_UNIT: &&() = &&();
#[inline(never)]
pub fn lifetime_translator_mut<'a, 'b, T: ?Sized>(
    _val_a: &'a &'b (),
    val_b: &'b mut T,
) -> &'a mut T {
    val_b
}
pub fn expand_mut<'a, 'b, T: ?Sized>(x: &'a mut T) -> &'b mut T {
    let f: for<'x> fn(_, &'x mut T) -> &'b mut T = lifetime_translator_mut;
    f(STATIC_UNIT, x)
}

Это очень специфический код, который ты нигде в природе не увидишь
Но если коротко - то он позволяет получить для переменной которая живёт малое время, указатель который живёт дольшее время (что есть баг компилятора, и что язык запрещает), aka use-after-free

Остальные уязвимости там достигаются через type confusion - имея user after free, мы можем обращаться к освобождённой памяти, а значит если в ту память записать что-то другое - то мы общаемся с переменной типа A используя указатель на тип B

buffer-overflow - к короткому буферу обращаемся как к длинному
null-pointer-deref - к нулевому указателю обращаемся как к референсу (который не может быть null)
И т.д. Раньше в cve-rs было ещё больше багов на этой базе, но сейчас почти все отвалились уже при работе с обычным компилятором, а под miri они никогда не работали.

Как только этот оставшийся баг будет исправлен, то весь cve-rs отпадёт

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51

59. Сообщение от нах. (?), 28-Июн-25, 18:12   +/
> Но конечно же, вы всегда можете сделать форк ядра Linux без Rust)

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


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

60. Сообщение от Аноним (13), 28-Июн-25, 18:19    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54 Ответы: #65

61. Сообщение от Аноним (-), 28-Июн-25, 18:20   +1 +/
> Но конечно же, вы всегда можете сделать форк ядра Linux без Rust)

Разумеется!
Вот форк иксов уже сделали.
А сейчас сделают форк ядра. И заживееем!


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

62. Сообщение от Аноним (-), 28-Июн-25, 18:26   +/
> Ну вот и о какой тогда безопасности речь? Сами себе противоречите.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #89

63. Сообщение от Аноним (63), 28-Июн-25, 18:27   +/
21 год - 30 млн строк кода.
25 год - 40 млн строк кода.

Сколько строк кода на rust?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #69, #96

64. Сообщение от Аноним (49), 28-Июн-25, 18:30   +1 +/
> Круто. А дрова все еще с линукса тырить будете?

Почему "тырить"?
Там обычно таки "permission is hereby granted" (я так понимаю, это "исконно-посконная линуховая лицензия" - последние лет цать сообщество все более-менее работающие дрова под ней пишет и в ядро включает, а само шифруется под псевдонимами типа "штеуд" или "красная шапка")

torvalds/linux/blob/master/drivers/gpu/drm/nouveau/nvkm/core/engine.c
> Permission is hereby granted, free of charge,

drivers/gpu/drm/i915/gvt/kvmgt.c
> Copyright(c) 2011-2016 Intel Corporation. All rights reserved.
> * Permission is hereby granted, free of charge

drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c
> * Copyright 2019 Advanced Micro Devices, Inc.
> * Permission is hereby granted, free of charge,

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #72

65. Сообщение от Аноним (49), 28-Июн-25, 18:37   +2 +/
>>(Автор(ы) cve-rs) So far, all our bugs are implemented using a single soundness hole in the Rust compiler.
> (опеннетный кексперт) Здесь агитатор также не смог отличить тезис и пример проявления этого тезиса.

Не, ну опеннетному кексперту-то всяко видней, что там и как на самом деле, ага ...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60 Ответы: #66

66. Сообщение от Аноним (13), 28-Июн-25, 18:48   –3 +/
Да, маня, мне виднее что я имел ввиду на самом деле в своём посте. И свидетельства тому выше.

Кстати, тут агитатор совсем запутался в показаниях. Если котируется мнение только авторов чего-либо(не комментов на опеннете), зачем агитатор пытается в _коментах на опеннете_ рассказывать что и как на самом деле? Является ли он автором чего-либо? Нет. Вменяем ли он? Нет.

Ну и что-то он слишком быстро слился со своего тейка "интегрировано в компилятор - значит часть компилятора". Наверное я его спугнул всё-таки и он почуял неладное.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #67, #70

67. Сообщение от morphe (?), 28-Июн-25, 19:01   +1 +/
> Ну и что-то он слишком быстро слился со своего тейка "интегрировано в
> компилятор - значит часть компилятора".

Это буквально часть компилятора, все comptime вычисления через miri идут)
А всё остальное я постом ниже описал нормально

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #73

68. Сообщение от Аноним (-), 28-Июн-25, 19:04   +/
https://users.rust-lang.org/t/i-finally-found-the-cheat-code...

> I don't like that project. Through the ways of the internet is somehow got some spotlight, but AFAIK it doesn’t really contain any novelty, but builds on the oldest type-system unsoundness in the books, which is a known issue for almost a decade longer than cve-rs exists

https://github.com/rust-lang/rust/issues?q=is%3Aissue&#...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

69. Сообщение от Аноним (69), 28-Июн-25, 19:23   +/
А разве кто то написал что он УЖЕ всё заменил ? Через несколько лет будете спрашивать "сколько строк кода на си" . Если ещё будет о чём спрашивать .
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #71, #76

70. Сообщение от Аноним (49), 28-Июн-25, 19:27   +1 +/
> Да, маня, мне виднее что я имел ввиду на самом деле в своём посте. И свидетельства тому выше.

Твои унылые переобувания в прыжке, ты хотел сказать? Сколько их тут уже было, 3 или 4?

> Кстати, тут агитатор совсем запутался в показаниях. Если котируется мнение только авторов
> чего-либо(не комментов на опеннете), зачем агитатор пытается

Балаболка, ты ж сам - на них ссылся, в качестве "доказательства" своего "тезиса".
Получается обычное опеннетное "тут читаем, а там рыбу заворачивали, вот!".

У тебя ж вся цепочка "аргументации" построена на повторении на разные лады "в ЯП того-этого нет, потому что в компиляторе есть баг и его можно использовать".
Божественный (нет) уровень, че.

Кстати, агитатор чего и почему? Ткнуть опеннетного кексперта носом в л(а/o)жу - уже стало "агитацей за раст"?


> Ну и что-то он слишком быстро слился со своего тейка "интегрировано в
> компилятор - значит часть компилятора". Наверное я его спугнул всё-таки и он почуял неладное.

Балабол, твой "тейк" существовал лишь в твоей фантазии, а "спугнул" ты - своей "крутизной и умом", ага.
Любители "троллить тупостью" мне не интересны, тем более пошел вообще какой-то бред вида "компилятора, которого нет" и прочие унылые демагогические виляния классического, ткнутого носом в лужу, опеннетного кэксперта.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #74

71. Сообщение от Аноним (71), 28-Июн-25, 19:32   +/
Через несколько десятков лет? Или попросят весь мир подождать, пока актуальное ядро переписывают?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

72. Сообщение от Аноним (-), 28-Июн-25, 19:35   +/
>> Круто. А дрова все еще с линукса тырить будете?
> Почему "тырить"?
> Там обычно таки "permission is hereby granted"

А что на счет напр. wifi?
wifibox просто так появился?))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64

73. Сообщение от Аноним (13), 28-Июн-25, 19:36   –1 +/
Нет, не часть. Никаких "comptime вычислений" в расте нет. Как впрочем и компилятора, но то ладно.

Кстати, как интересно агитатор запутался в показаниях. Если все "вычисления"(допустим, они есть) идут через мири, то что было до мири(18 год, кажется)? Агитка про безопасность уже была и не первый год. Безопасности не было? Да нет, лозунги были всё те же. То есть ничего не поменялось.

> А всё остальное я постом ниже описал нормально

Там классическая агитка "ну когда-нибудь поправят - не считается"/"а вот баг же заведён - значит не дыра". Помимо полной несостоятельности этих тезисов, тут ещё и ссылки на себя. Это примерно как "в сишке нет уб, ведь его наличие признаётся/в стандарте есть - значит это просто баг реализации/стандарта, не считается".

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

74. Сообщение от Аноним (13), 28-Июн-25, 19:49   –1 +/
> Балаболка, ты ж сам - на них ссылся, в качестве "доказательства" своего "тезиса".

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

> У тебя ж вся цепочка "аргументации" построена на повторении на разные лады "в ЯП того-этого нет, потому что в компиляторе есть баг и его можно использовать".

Зачем агитатор, не могущий в элементарную логику, пытается рассуждать о чём-то и проецировать свои детсадовские представления на остальных?

> Балабол, твой "тейк" существовал лишь в твоей фантазии, а "спугнул" ты - своей "крутизной и умом", ага.

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

> вообще какой-то бред вида "компилятора, которого нет"

С этого агитаторов подрывает, да. А так, да - компилятора руста не существует. Всё что есть - парсер-нашлёпка поверх ворованного ллвм.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

75. Сообщение от 12yoexpert (ok), 28-Июн-25, 20:36   +1 +/
а на си этих драйверов нет? просто чтобы знать, какое железо вендорлокнутое
Ответить | Правка | Наверх | Cообщить модератору

76. Сообщение от 12yoexpert (ok), 28-Июн-25, 20:39   +/
через несколько лет, если раст таки завезут в ядро, ты будешь раз в неделю бегать в магазин за новым железом, а ещё через несколько лет будет невозможно собрать ядро дома, и опенсорсный по сути проект станет проприетарным по факту

будешь смотреть рекламу на половину экрана или платить за подписку, чтобы смотреть на четверть экрана

и бежать тебе будет уже некуда

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69 Ответы: #79

77. Сообщение от 12yoexpert (ok), 28-Июн-25, 20:45   +/
> Целых три ансефа на все изменения.

ага, можно было обойтись одним

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

78. Сообщение от 12yoexpert (ok), 28-Июн-25, 20:47   +/
> если на одну кучу навалить другую кучу, то вышеупомянутая "одна" станет ширше

Закон Раста

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40

79. Сообщение от Ononim (?), 28-Июн-25, 22:00   –1 +/
Не врёшь же, да?
Или лучше быть как местные старожилы, которые постоянно ноют, что на их четвёртом пне теперь перестало что-то заводиться, потому что в ядре что-то удалили.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76

80. Сообщение от Аноним2806 (?), 28-Июн-25, 22:06   +/
Геншин начнёт летать! Но только на Mali. Нет, вру. Летать он по-прежнему будет только на Apple M*. Это была точка зрения практического применения, спасибо за понимание.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

81. Сообщение от Alladin (?), 28-Июн-25, 23:12   +/
этот код говорит, что структуру можно отправлять из потока в поток, эту структуру можно вызывать в многопоточной среде без синхронизации.
Скорее всего авторы использовали структуру в которой сырые указатели, а про них раст ничего сказать не может так как это скорее всего сишное
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #90

82. Сообщение от Аноним (82), 29-Июн-25, 02:10   +/
> Rust в Linux как бетонный каток диет по асфальту - медленно но верно!

Такими темпами рано или поздно ядра не станет. Помянем.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

83. Сообщение от Аноним (83), 29-Июн-25, 04:00   +/
Как некогда лютый хейтер Раста, скажу: это неплохо.
Пусть драйвера будут на Расте, безопасность там совсем не будет лишней. А планировщик, переключение контекста и прочие таймеры пусть будут на Си - там где нужны максимальные производительность и быстродействие, нужно их обеспечить. Так же как и вставки на Ассемблере никуда не денутся - эту часть кода заменять только на LLVM IR.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #85, #93

84. Сообщение от Аноним (83), 29-Июн-25, 04:05   +/
600 строк - впечатляет. Если написали функциональный драйвер, уместившийся в эти 600 строк - можно похлопать👏.
Обычно кстати на Си любят таким заниматься, чтобы максимум функционала в минимальный объем кода - иногда даже выходит красиво.(Си минималистичен).
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #88

85. Сообщение от Аноним (85), 29-Июн-25, 06:06   +/
> Так же как и вставки на Ассемблере никуда не денутся - эту часть кода заменять только на LLVM IR.

Бег с молотком и спортивное прибивание гвоздями к одному компилятору.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

86. Сообщение от Аноним (85), 29-Июн-25, 06:08   +/
Нет бы прошивку планировщика написать.
Ответить | Правка | Наверх | Cообщить модератору

87. Сообщение от Аноним (87), 29-Июн-25, 08:15   +/
если раст разработчик поел небезопасно, то виновата эволюция дарвина или креативизм теологов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

88. Сообщение от Кошкажена (?), 29-Июн-25, 09:06   +/
> Если написали функциональный драйвер,

В новости про это есть

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

Это просто заглушка по факту. Но фанатам раста нужна пища. Это отталкивает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #84

89. Сообщение от Кошкажена (?), 29-Июн-25, 09:13   +/
> О какой безопасности может идти речь, если раст-коду приходится взаимодействовать с си кодом, который не дает вообще ни каких гарантий.

Во-первых это не так.

> Безопасным будет только раст код, а если что-то пойдет не так - спрашивайте сишников.

Смысл тогда делать обвязки, которые внутри будут вызывать "unsafe" код и стучать себя в грудь, заявляя "мы сделали на расте". Бред.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #62

90. Сообщение от Кошкажена (?), 29-Июн-25, 09:14   +/
Ну и какой смысл в этом? Обмазаться unsafe в самом важном.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81

91. Сообщение от aNonim (?), 29-Июн-25, 09:15   +/
На что только не пойдут проприерасты чтобы утащить свободный драйвер в фирмварь.
Ответить | Правка | Наверх | Cообщить модератору

92. Сообщение от YetAnotherOnanym (ok), 29-Июн-25, 09:20   +/
> Функциональность для взаимодействия с GPU Mali портирована из существующего DRM-драйвера Panthor (Direct Rendering Manager), написанного на языке Си.

Поясните, кто в курсе - он взяли код на си и, глядя на него, написали код на расте с той же функциональностью, или  написали обвязку на расте для сишной либы?

Ответить | Правка | Наверх | Cообщить модератору

93. Сообщение от Аноним (82), 29-Июн-25, 10:33   +/
> Пусть драйвера будут на Расте, безопасность там совсем не будет лишней

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83 Ответы: #97

96. Сообщение от Fyjy (-), 29-Июн-25, 11:07   +/
А сколько там строк "дрова от вендоров"?
Если завтра АМД притащит 5 лямов автогенерированных строк, но на расте, то их точно так же примут.
Потому что ты или жреш чо дали, или сидишь без дров.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63

97. Сообщение от Fyjy (-), 29-Июн-25, 11:12   +/
>  "безопасность" на Расте кажущаяся, а не фактическая.

И ты готов привести какие-то доказательства своего утверждения?

> синтаксис костыльный

только для неосиляторов

> не приведет к увеличению безопасности.

Кажется у нас в треде целый разработчик ядра!
Странно, что другие типа Грега имеют отличное мнение)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93

98. Сообщение от Аноним (98), 29-Июн-25, 11:42   +/
Если он написан с нуля, то почему там исходники из Беркли и других мест?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру