• Rust-integration i Linux-kärnan möter utmaningar men visar framsteg

    Arbetet med att införa Rust i Linux-kärnan har både mött motstånd och gjort framsteg den senaste tiden. Konflikten mellan förespråkare av Rust och C har blivit allt mer påtaglig, och Linus Torvalds beskrev den under Open Source Summit Europe 2024 som en strid med ”nästan religiösa undertoner.”

    Motstånd från kernel-maintainers

    Ett av de största hindren är att många av de erfarna Linux-utvecklarna är vana vid C och saknar kunskap om Rust. Dan Williams från Intels Linux-arkitektteam påpekade vid Linux Plumbers 2024 att dessa utvecklare är trygga med C och därför inte vet hur de ska granska eller felsöka Rust-kod. Samtidigt har Rust-utvecklare svårt att arbeta med Linux-kärnans grundläggande C-kod.

    Debatten trappades upp när en patch föreslogs i januari för att möjliggöra DMA (Direct Memory Access) för Rust-drivrutiner. Det skulle göra det enklare för Rust att hantera in- och utmatning av data. Men den erfarne Linux-maintainern Christoph Hellwig var tydlig i sitt avståndstagande och skrev: ”Ingen Rust-kod i kernel/dma, tack.”

    När Miguel Ojeda, ledaren för Rust for Linux-projektet, bad om ett alternativt förslag svarade Hellwig att Rust-utvecklarna borde hålla sina ändringar i sin egen kod istället för att ”göra livet svårare för andra.” Han betonade också att han inte vill arbeta med ett projekt som blandar programmeringsspråk, eftersom det skapar underhållsproblem.

    Rust-utvecklare erbjuder lösningar

    För att hantera oron föreslog Red Hat-utvecklaren Danilo Krummrich att Rust-koden för DMA-hantering skulle läggas som en separat modul underhålld av Rust-utvecklare. Detta skulle göra det möjligt att abstrahera C-API:erna utan att påverka kärnans kodbas.

    Men Hellwig var fortsatt kritisk och menade att han inte ville ha ytterligare en underhållare eller att Rust skulle ”sprida sig som en cancer” i kärnan. Det ordvalet väckte starka reaktioner, eftersom termen tidigare använts för att attackera Linux i kommersiella sammanhang.

    Linux-utvecklaren Ted T’so menade dock att Hellwig hade en poäng – problemet är inte Rust i sig, utan att det kräver tid och resurser som många maintainers inte har.

    Frustration och hårda ord

    Asahi Linux-utvecklaren Hector Martin gick längre och uppmanade Linus Torvalds att ingripa för att lösa ”Rust-drivrutinsröran.” När det inte skedde, tog Martin till sociala medier för att pressa fram ett beslut.

    Torvalds reagerade skarpt och menade att Martin borde ifrågasätta sin egen inställning istället för att försöka tvinga fram förändringar genom offentlig kritik. Han betonade att Linux-kärnan har en etablerad process för förändringar och att sociala medier inte är rätt forum för att driva utvecklingen framåt.

    Efter den konflikten valde Martin att lämna sitt arbete med Apple/ARM-plattformen för Linux och uttryckte sin besvikelse över hur utvecklingen av kärnan hanteras.

    En väg framåt för Rust i Linux

    En möjlig lösning har föreslagits av realtidsutvecklaren Steven Rostedt, som jämförde situationen med realtidsstödet i Linux, vilket tog 20 år att bli en del av kärnan. Han föreslog att Rust-utvecklarna kan hålla sin kod utanför kärnans kodbas tills den är mer mogen och kan integreras utan att störa befintliga system.

    Som ett steg i den riktningen publicerade Miguel Ojeda en policy för Rust i Linux, där det slås fast att varje subsystem själv kan avgöra om de vill använda Rust eller inte. Han betonade också att Rust-koden kan brytas temporärt om C-maintainers behöver göra akuta ändringar.

    Rust gör framsteg i Linux-kärnan

    Trots motståndet fortsätter Rust långsamt att få en plats i Linux. Med Linux 6.13, som släpptes i januari 2025, infördes betydande förbättringar för Rust, inklusive stöd för moduler, bindings och spårningshändelser.

    Greg Kroah-Hartman, som ansvarar för stabila Linux-utgåvor, menade att Rust nu nått en brytpunkt där vi kan förvänta oss fler Rust-drivrutiner framöver. Han konstaterade att Rust-utvecklarna bevisat många skeptiker fel genom att leverera fungerande kod.

    Trots de hårda diskussionerna ser Rust ut att fortsätta sin väg in i Linux, långsamt men stabilt.

    Läs hela artikel på Engelska :

    https://thenewstack.io/rust-integration-in-linux-kernel-faces-challenges-but-shows-progress

Rust-integration i Linux-kärnan möter utmaningar men visar framsteg

Arbetet med att införa Rust i Linux-kärnan har både mött motstånd och gjort framsteg den senaste tiden. Konflikten mellan förespråkare av Rust och C har blivit allt mer påtaglig, och Linus Torvalds beskrev den under Open Source Summit Europe 2024 som en strid med ”nästan religiösa undertoner.”

Motstånd från kernel-maintainers

Ett av de största hindren är att många av de erfarna Linux-utvecklarna är vana vid C och saknar kunskap om Rust. Dan Williams från Intels Linux-arkitektteam påpekade vid Linux Plumbers 2024 att dessa utvecklare är trygga med C och därför inte vet hur de ska granska eller felsöka Rust-kod. Samtidigt har Rust-utvecklare svårt att arbeta med Linux-kärnans grundläggande C-kod.

Debatten trappades upp när en patch föreslogs i januari för att möjliggöra DMA (Direct Memory Access) för Rust-drivrutiner. Det skulle göra det enklare för Rust att hantera in- och utmatning av data. Men den erfarne Linux-maintainern Christoph Hellwig var tydlig i sitt avståndstagande och skrev: ”Ingen Rust-kod i kernel/dma, tack.”

När Miguel Ojeda, ledaren för Rust for Linux-projektet, bad om ett alternativt förslag svarade Hellwig att Rust-utvecklarna borde hålla sina ändringar i sin egen kod istället för att ”göra livet svårare för andra.” Han betonade också att han inte vill arbeta med ett projekt som blandar programmeringsspråk, eftersom det skapar underhållsproblem.

Rust-utvecklare erbjuder lösningar

För att hantera oron föreslog Red Hat-utvecklaren Danilo Krummrich att Rust-koden för DMA-hantering skulle läggas som en separat modul underhålld av Rust-utvecklare. Detta skulle göra det möjligt att abstrahera C-API:erna utan att påverka kärnans kodbas.

Men Hellwig var fortsatt kritisk och menade att han inte ville ha ytterligare en underhållare eller att Rust skulle ”sprida sig som en cancer” i kärnan. Det ordvalet väckte starka reaktioner, eftersom termen tidigare använts för att attackera Linux i kommersiella sammanhang.

Linux-utvecklaren Ted T’so menade dock att Hellwig hade en poäng – problemet är inte Rust i sig, utan att det kräver tid och resurser som många maintainers inte har.

Frustration och hårda ord

Asahi Linux-utvecklaren Hector Martin gick längre och uppmanade Linus Torvalds att ingripa för att lösa ”Rust-drivrutinsröran.” När det inte skedde, tog Martin till sociala medier för att pressa fram ett beslut.

Torvalds reagerade skarpt och menade att Martin borde ifrågasätta sin egen inställning istället för att försöka tvinga fram förändringar genom offentlig kritik. Han betonade att Linux-kärnan har en etablerad process för förändringar och att sociala medier inte är rätt forum för att driva utvecklingen framåt.

Efter den konflikten valde Martin att lämna sitt arbete med Apple/ARM-plattformen för Linux och uttryckte sin besvikelse över hur utvecklingen av kärnan hanteras.

En väg framåt för Rust i Linux

En möjlig lösning har föreslagits av realtidsutvecklaren Steven Rostedt, som jämförde situationen med realtidsstödet i Linux, vilket tog 20 år att bli en del av kärnan. Han föreslog att Rust-utvecklarna kan hålla sin kod utanför kärnans kodbas tills den är mer mogen och kan integreras utan att störa befintliga system.

Som ett steg i den riktningen publicerade Miguel Ojeda en policy för Rust i Linux, där det slås fast att varje subsystem själv kan avgöra om de vill använda Rust eller inte. Han betonade också att Rust-koden kan brytas temporärt om C-maintainers behöver göra akuta ändringar.

Rust gör framsteg i Linux-kärnan

Trots motståndet fortsätter Rust långsamt att få en plats i Linux. Med Linux 6.13, som släpptes i januari 2025, infördes betydande förbättringar för Rust, inklusive stöd för moduler, bindings och spårningshändelser.

Greg Kroah-Hartman, som ansvarar för stabila Linux-utgåvor, menade att Rust nu nått en brytpunkt där vi kan förvänta oss fler Rust-drivrutiner framöver. Han konstaterade att Rust-utvecklarna bevisat många skeptiker fel genom att leverera fungerande kod.

Trots de hårda diskussionerna ser Rust ut att fortsätta sin väg in i Linux, långsamt men stabilt.

Läs hela artikel på Engelska :

https://thenewstack.io/rust-integration-in-linux-kernel-faces-challenges-but-shows-progress