В ядре Linux продолжается противостояние разработчиков, использующих язык Rust, с командой мейнтейнеров, которые считают внедрение дополнительных языков программирования нежелательным и рискованным усложнением кодовой базы.
Напряжённость в сообществе разработчиков возникла в сентябре прошлого года, когда инженер Microsoft Ведсон Алмейда Фильо покинул проект “Rust for Linux” из-за “нетехнических разногласий” – так он охарактеризовал сложности в коммуникации с теми, кто преследует иные цели.
В январе 2025 года ситуация обострилась после того, как предложенная абстракция , позволяющая драйверам устройств на Rust взаимодействовать с основным DMA API ядра на языке C, встретила сопротивление со стороны мейнтейнера ядра Кристофа Хельвига.
В сообщении в списке рассылки ядра Linux Хельвиг категорически выступил против включения кода на Rust, написав: “Не заставляйте меня иметь дело с вашим модным языком. Поддержка многоязычных проектов – это проблема, с которой я не хочу сталкиваться”.
Разработчики из проекта Rust for Linux предложили создать абстракции на Rust, которые будут централизованно поддерживаться в директории rust/kernel . Это позволило бы сохранить C-часть ядра неизменной, а драйверам на Rust использовать общие абстракции вместо создания собственных привязок к C-коду.
Однако Хельвиг подчеркнул , что каждое дополнительное внедрение другого языка существенно снижает удобство сопровождения ядра как единого проекта. По его мнению, Linux смог просуществовать так долго именно благодаря отсутствию внутренних границ, а добавление нового языка полностью нарушает этот принцип.
Ядро Linux получило поддержку кода на Rust 3 октября 2022 года . Это решение было принято на фоне растущего интереса к безопасности памяти в системном программировании. Появляются новые проекты вроде TrapC, FilC, Mini-C и Safe C++, нацеленные на повышение безопасности работы с памятью в C и C++.
Лидер проекта Asahi Linux Гектор Мартин в своём обращении предложил разработчикам Rust проигнорировать возражения Хельвига и отправить патч на утверждение руководителю проекта Linux Линусу Торвальдсу. По мнению Мартина, если Торвальдс примет изменения, мнение Хельвига не будет иметь значения.
Сам Торвальдс прокомментировал трения между разработчиками на C и Rust на саммите Open Source в Вене: “Очевидно, есть люди, которым не нравится сама идея Rust и его вторжение в их область. Люди даже говорят о провале интеграции Rust… Мы занимаемся этим уже пару лет, и сейчас слишком рано делать такие выводы. Но даже если интеграция Rust потерпит неудачу – а я так не думаю – именно так и происходит обучение”.