Desde que Rust fue propuesto como un lenguaje seguro para el kernel de Linux, la comunidad se ha dividido en dos bandos: los defensores del tradicional C y quienes impulsan Rust como una solución más segura y moderna. La disputa ha alcanzado un punto de tensión tan alto que Linus Torvalds, creador de Linux, la comparó con una "guerra religiosa" durante el Open Source Summit Europe 2024.
Pero, ¿qué está en juego? ¿Por qué la resistencia de algunos desarrolladores clave? ¿Y cómo se está avanzando en la integración de Rust en Linux a pesar de los desafíos?
El Problema de la integración de Rust en el Kernel
Uno de los mayores obstáculos para la adopción de Rust en Linux es la falta de experiencia de los mantenedores del kernel con este lenguaje.
📌 Dan Williams, ingeniero principal de Intel, explicó en la conferencia Linux Plumbers 2024 que los mantenedores del kernel dominan C, pero no Rust, lo que dificulta la revisión de código y la depuración de errores.
📌 A la vez, los desarrolladores de Rust tienen problemas al interactuar con el código legado del kernel en C. Un ejemplo de esto ocurrió en enero de 2025, cuando se propuso una actualización de Rust para mejorar la API de Acceso Directo a Memoria (DMA) en el kernel de Linux.
Rechazo de los mantenedores del Kernel
El experimentado mantenedor del kernel Christoph Hellwig rechazó inmediatamente la inclusión de esta mejora, respondiendo:
🛑 "No quiero código Rust en kernel/dma."
Cuando Miguel Ojeda, líder del proyecto Rust para Linux, pidió sugerencias sobre dónde ubicar el código, Hellwig replicó que los desarrolladores de Rust debían mantener su código aislado sin afectar el núcleo de Linux.
📌 Ted T’so, otro desarrollador del kernel, explicó que la verdadera preocupación es la carga de trabajo que la integración de Rust añade a los mantenedores, quienes ya tienen tiempo limitado para revisar y mantener su código en C.
El conflicto se intensifica: El Caso de Hector Martin y Linus Torvalds
Uno de los episodios más polémicos ocurrió cuando Hector Martin, líder de Asahi Linux, pidió públicamente a Linus Torvalds que interviniera para resolver la disputa sobre los controladores de dispositivos en Rust.
Cuando no obtuvo respuesta, Martin recurrió a las redes sociales para presionar, lo que molestó a Torvalds, quien respondió:
⚠️ "Si hay problemas en el desarrollo del kernel, las redes sociales no son la solución."
Como resultado, Hector Martin abandonó el desarrollo de la plataforma Apple/ARM en Linux, declarando su pérdida de confianza en el proceso de desarrollo del kernel.
¿Cuál es el camino a Seguir? Lecciones de Linux en tiempo real
Ante estos conflictos, algunos expertos sugieren un camino más gradual para Rust en Linux, similar al que tomó Real-Time Linux antes de su integración en el kernel, proceso que tomó 20 años.
📌 Steven Rostedt, desarrollador de Linux en tiempo real, recomendó que Rust se mantenga como un parche externo, lo que permitiría experimentar sin afectar el núcleo del sistema.
📌 Como respuesta a la creciente incertidumbre, Miguel Ojeda publicó en 2025 un documento de políticas sobre Rust en Linux, estableciendo que cada subsistema puede decidir si adopta Rust o no.
📌 Greg Kroah-Hartman, mantenedor de la rama estable de Linux, afirmó que Rust está en un punto de inflexión, con la expectativa de que en las próximas versiones del kernel se comiencen a aceptar más controladores escritos en Rust.
Progresos en la integración de Rust en Linux
📌 Linux 6.13 (enero de 2025) introdujo mejoras clave para Rust:
✔️ Soporte para módulos en Rust dentro del kernel.
✔️ Eventos de rastreo y bindings para desarrolladores.
✔️ Mejor compatibilidad con los controladores de dispositivos.
📌 Para la versión Linux 6.14, se espera soporte para controladores PCI y de plataforma, lo que abriría la puerta a una adopción más amplia de Rust.
📌 Según Kroah-Hartman, estos avances prueban que Rust tiene un futuro en Linux, aunque su integración será lenta y estable, priorizando la compatibilidad y la seguridad sobre la velocidad del desarrollo.
¿Rust será el futuro del Kernel de Linux?
A pesar de la resistencia de algunos desarrolladores, Rust sigue avanzando en el kernel de Linux. La clave está en encontrar un equilibrio entre:
✅ Evitar sobrecargar a los mantenedores del kernel.
✅ Mantener la estabilidad del sistema.
✅ Aprovechar las ventajas de Rust, como la seguridad en la gestión de memoria.
🔹 Mientras la comunidad de Rust y Linux continúe colaborando, la adopción de Rust en el kernel será una realidad en los próximos años.