• Multikernel: Linux tar steget bortom den enskilda kärnan

    Linux står inför en ny milstolpe. Med projektet Multikernel öppnas dörren för en framtid där flera Linux-kärnor kan samarbeta på samma maskin. Genom att bygga vidare på den beprövade kexec-tekniken vill utvecklarna skapa ett mer flexibelt och skalbart Linux – anpassat för moln, datacenter och hyperskala.

    Linux har alltid haft ett rykte om sig att vara skalbart. Från små inbyggda system till världens största superdatorer – samma grundidé, samma kärna. Men under ytan finns det en begränsning: Linux bygger fortfarande på en modell där en enda kernel styr hela hårdvaran.

    Nu håller det på att förändras.

    Ett nytt initiativ, kallat Multikernel, vill ge Linux en helt ny arkitektur. Projektet öppnades nyligen upp för allmänheten och i samband med detta skickade Googles mjukvaruingenjör Cong Wang in de allra första kodändringarna till den klassiska Linux Kernel Mailing List (LKML).

    Från en till många
    Tänk dig att du sitter vid en server med en kraftfull processor och många kärnor. Ändå kör allt fortfarande under samma Linux-kärna, som ensam bestämmer hur resurserna används. Men vad händer om du vill köra två helt olika versioner av Linux sida vid sida – utan att ta till virtuella maskiner?

    Det är här Multikernel kommer in.

    Istället för att hålla fast vid en monolitisk modell låter Multikernel dig starta flera Linux-instanser på samma maskin, som sedan samarbetar som jämlikar. Varje kernel lever sitt eget liv, men de kan samtidigt dela på arbetsuppgifterna.

    Idén är inte helt ny. Forskare har tidigare experimenterat med samma tanke – bland annat i projektet Popcorn Linux, som visade att det går att låta flera kärnor samspela över olika hårdvaruplattformar. Men Multikernel försöker göra detta till något praktiskt och direkt användbart för dagens Linux.

    Byggt på gamla beprövade mekanismer
    Hur får man då flera Linux-kärnor att leva sida vid sida? Multikernel bygger vidare på en redan existerande funktion i Linux: kexec.

    Kexec har i mer än 20 år använts för att snabbt starta en ny kernel utan att starta om hela datorn. Multikernel använder samma teknik – men istället för att ersätta en gammal kernel med en ny, kan man nu ”spawna” flera kärnor som kör parallellt.

    Det betyder att man inte behöver uppfinna allt från början. Istället tar Multikernel något som redan är vältestat och förlänger det in i en ny riktning.

    Ett Linux för molnet och hyperskalan
    Varför behövs då detta? Svaret finns i de enorma datacenter som driver molnet.

    Där räcker inte alltid idén om ett enhetligt systemavtryck. I storskaliga miljöer kan det vara mer praktiskt att låta flera kernels hantera olika delar av arbetsbördan, ungefär som flera hjärnor som samarbetar i samma kropp.

    För utvecklare betyder det också något viktigt: man kan börja experimentera med denna arkitektur redan nu, utan att skriva om hela Linux från grunden.

    Öppenhet som filosofi
    Multikernel är inte ett slutet projekt. Tvärtom bygger det på öppenhet och samarbete.

    Alla ändringar, alla arkitekturval, allt delas öppet med Linux-communityt. Målet är inte att säga: ”så här ska det vara”, utan att bjuda in fler till diskussionen om hur framtidens kernel kan se ut.

    Teamet bakom Multikernel planerar också en serie instruktionsvideor som förklarar tekniken bakom projektet – både hur Multikernel fungerar och hur kexec gör det möjligt.

    Ett första steg på en lång resa
    Just nu befinner sig projektet i sin linda. Patcherna som släppts är bara första stenen i grunden. Men riktningen är tydlig: Multikernel vill göra Linux mer flexibelt, mer anpassningsbart och mer redo för en värld där datorer inte längre bara är en maskin – utan ofta tusentals maskiner som arbetar i kluster.

    Och det kanske mest spännande? Alla kan vara med. Koden finns på GitHub, diskussionen förs öppet på LKML, och vem som helst med intresse kan bidra med idéer och förbättringar.

    Multikernel är alltså inte bara ett tekniskt experiment – det är en inbjudan till att tänka om Linux från grunden.

    https://linuxiac.com/linux-kernel-multikernel-project-opens-up

    Teknisk fakta – Multikernel
    • Arkitektur: Multikernel (replikerad/”peer” kernel-design ovanpå kexec)
    • Kärnmekanism: Startar extra Linux-instanser via kexec (”spawned kernels”) på samma maskin
    • Isolering + samarbete: Varje kernel är isolerad men kan dela arbetsbörda med andra
    • Målmiljö: Hyperskala, moln, kluster och heterogena system
    • Användningsfall: Kör olika kernelversioner samtidigt utan VM; partitionera jobblaster per kernel
    • Resurshantering: Tänkbar partitionering av CPU-set, minnesområden och I/O-enheter per kernel
    • Kommunikation: Inter-kernel-kanaler (IKC) för kontroll- och dataplan (under uppbyggnad)
    • Kompatibilitet: Bygger på beprövad kexec-infrastruktur (20+ år i Linux)
    • Designmål: Minimala upstream-ändringar, robusthet och transparent integration
    • Relation till forskning: Inspirerat av Popcorn Linux och andra replikerade kernelprojekt
    • Status: Tidig fas; första patchset inskickat till LKML av Cong Wang (Google)
    • Utvecklarfokus: Möjliggör experiment utan omfattande omskrivning av kärnan
    • Begränsningar (nu): Delning av vissa enheter/DRM/blk kan vara begränsad; aktivt arbete pågår
    • Säkerhet: Isolering per kernel; attackyta mellan kernels hanteras via kontrollerade gränssnitt
    • Bygg/krav: Kernel med CONFIG_KEXEC, kexec-tools; x86_64 först ut (andra ISA kan följa)
    • Felsökning: printk, tracing, loggkanaler per kernel; koordinering kräver nya verktygsflöden
    • Hemsida/Repo: GitHub (källkod) och LKML (diskussion); tekniska videor utlovas
    • Engagera dig: Testa patcharna, ge feedback på LKML, skicka förbättringar via pull requests
  • Apple M2 Pro, Max och Ultra på väg in i Linux-kärnan

    Linuxvärlden tar ännu ett steg närmare full kompatibilitet med Apples hårdvara. Nu är Device Tree-filer för M2 Pro, Max och Ultra på väg in i den officiella Linux-kärnan. Bakom insatsen står Asahi Linux-utvecklare som, trots bakslag och hårt motstånd, fortsätter att bana väg för att pingviner världen över ska kunna köra Linux sömlöst på Apples senaste datorer.

    Arbetet med att få Apples nyare kretsar att fungera fullt ut i Linuxmiljö går framåt. Trots vissa bakslag för Asahi Linux-projektet – bland annat att en av de mest profilerade utvecklarna, Alyssa Rosenzweig, nyligen lämnat projektet – fortsätter teamet att driva på för att deras kod ska bli en del av den officiella Linux-kärnan.

    I veckan skickade utvecklaren Janne Grunau in ett större paket med 37 patchar till Linux-kärnans sändlista. Syftet är att lägga till stöd för Apples M2 Pro, Max och Ultra genom de så kallade Device Tree-filerna, en nödvändig pusselbit för att hårdvaran ska kunna kommunicera med operativsystemet.

    M2-familjen bygger vidare på samma design som tidigare M1-kretsar, och mycket av arbetet kan återanvändas. M2 Pro beskrivs som en nedskalad variant av M2 Max, medan M2 Ultra i praktiken är två ihopkopplade Max-kretsar. Genom justeringar i device tree – bland annat särskilda offsetar för minnesadresser och dubbla systemnoder – kan Linux förstå hur de olika chipen är organiserade.

    För vanliga användare innebär detta att Linuxstödet för nyare Mac-datorer blir mer robust. Redan idag fungerar M2-baserade datorer med Asahi Linux, men utan dessa patchar finns stödet bara i projektets egen version, inte i den officiella Linuxkärnan.

    En detalj återstår dock: PCI Express-stödet för Mac Pro med M2 saknas fortfarande. Två tekniska hinder gör att den delen ännu inte är redo för upstream, och därmed får just den maskinen vänta på full funktionalitet i Linux.

    Faktaruta: Apple M2 Pro / Max / Ultra i Linux-kärnan

    Läget just nu (30 aug 2025): 37 patchar är inskickade till Linux-kärnans sändlista för att upstreama Device Tree-filer (DT) för Apple M2 Pro (t6020), M2 Max (t6021) och M2 Ultra (t6022). Asahi Linux stöder redan dessa i sin egen distribution, men målet här är full mainline-integration.

    Varför Device Tree?

    • DT beskriver hårdvaran för kärnan: noder för bussar, enheter, klockor, avbrott, minnesområden m.m.
    • Apple Silicon använder DT (inte ACPI) i Linux-världen, så korrekt DT är nyckeln till stabil boot, drivrutinsbindning och strömhante­ring.
    • Upstream-DT betyder att vanliga distro-kärnor (Debian, Fedora, Arch m.fl.) kan boota Macar utan specialpatchar.

    SoC-arkitekturen i korthet

    • t6020 (M2 Pro) = nedskalad t6021 (M2 Max). DT för Pro inkluderar Max och inaktiverar saknade block.
    • t6022 (M2 Ultra) = två sammankopplade t6021-kretsar (multi-die). Representeras i DT med två toppnivå-soc-noder.
    • MMIO-offsets: Andra kretsens register får en konstant offset via DT-ranges för att separera adresserna.
    • Avbrott: Interrupt-kontrollern är multi-die-medveten. DT anger die-tillhörighet i avbrottsdefinitionerna.
    • Återanvändning: Enhetsmallar från M1-familjen är SoC-agnostiska och kan återbrukas med smärre justeringar (t.ex. pinctrl och gpio-nummer).
    • Filer: SoC-specifika *.dtsi för t602{0,1,2} inkluderas av maskin-.dts för respektive Mac-modell.

    Boot-kedjan på Apple Silicon (översikt)

    • iBoot (Apple) → m1n1 (Asahi trampoline/hypervisor) → ev. U-BootLinux + .dtb
    • m1n1 förser Linux med rätt DT och gör lågnivåinit (t.ex. PPL, cache/TLB, Apple-särdrag) hanterbara för kärnan.

    Vad ingår i patchserien?

    • Nya DT-filer för M2 Pro/Max/Ultra-baserade maskiner med struktur enligt t600x-familjen.
    • Definitioner av bussar, timers, klockträd, I/O-kontrollers och noder för kritiska periferi-block.
    • Makrobaserade inkluderingar för att hålla nodetiketter unika mellan die 0/1 i M2 Ultra.

    Vad ingår inte ännu?

    • PCIe för Mac Pro (M2): Uteblir i denna omgång p.g.a. två kvarstående problem. Upstream-aktivering dröjer tills de är lösta.

    Konsekvenser för användare

    • Bättre out-of-the-box-stöd i vanliga distributioner när patcharna väl landar i mainline.
    • Färre specialkärnor och snabbare uppströmsfixar (säkerhet, stabilitet, energi, prestanda).

    Begrepp & “teknisk pornografi”

    • DT/DTS/DTSI: Källor som kompileras till DTB och beskriver hårdvarugrafen.
    • MMIO & ranges: Kartläggning av registerutrymmen; offsets separerar die 0/1 i Ultra.
    • pinctrl/GPIO: Pinmux och I/O-linjeindex; mindre skillnader mellan M1↔M2 justeras i DT.
    • Multi-die interrupt: Avbrottsdomäner taggas per die; kontrollern routar korrekt oberoende av fysisk placering.
    • SoC-agnostiska mallar: Drivrutiner matchar via compatible-strängar; gemensamma noder förenklar underhåll.
    • Upstreaming: Kod går från projektträd (Asahi) → LKML-granskning → soc/arm64/dt-träd → Linus’ mainline.

    Berörda maskiner (exempel)

    Macar med M2 Pro/Max/Ultra (t.ex. MacBook Pro-modeller, Mac Studio och Mac Pro med M2). Exakta maskin-.dts pekar mot respektive t602x.dtsi.

    Status: patchserie under granskning Fokus: DT för t6020/t6021/t6022 Saknas: PCIe för Mac Pro (M2)

    asahi@linux:~$

    https://www.phoronix.com/news/Apple-M2-Pro-Max-Ultra-DT

  • Linux Kernel 6.16 är här – men Torvalds flaggar för möjlig försening av nästa version

    Äntligen! Buggen som gjorde att 25 år gamla ljudkort som Sound Blaster kunde krascha slumpmässigt är nu fixad.

    Den stabila versionen av Linux-kärnan 6.16 är nu officiellt släppt. Enligt projektledaren Linus Torvalds avslutades utvecklingscykeln på ett lugnt och stabilt sätt, utan några större överraskningar – något som gjorde att en åttonde releasekandidat aldrig behövde släppas. Men medan det nuvarande släppet är ute, riktas blicken redan mot nästa version, Linux 6.17 – som kan komma att försenas.

    Familjehändelser kan påverka nästa version

    Torvalds har nämligen gått ut med en varning om att arbetet med Linux 6.17 riskerar att påverkas av personliga åtaganden. Under augusti kommer han att vara bortrest i samband med både ett familjebröllop och en födelsedag, och han räknar med att vara på resande fot ungefär halva månaden – med tid i både USA och Finland.

    Eftersom Linuxutvecklingen följer en tydlig rytm med ett två veckor långt merge window (sammanslagningsfönster) – då större nyheter förs in i koden – innebär hans frånvaro att viss förskjutning kan uppstå. Torvalds har därför redan försökt snabba på processen genom att be utvecklare skicka in sina pull requests tidigare än vanligt. Hittills har han fått in omkring 50 stycken i förväg, vilket han tackar för.

    Risk för mindre försening

    Trots sin framförhållning medger Torvalds att han under andra veckan av sammanslagningsfönstret kan få svårt att hantera alla inkommande kodändringar. Skulle det bli för mycket att hinna med innan han reser vidare, kan det första utkastet av Linux 6.17 – kallat rc1 – skjutas upp med några dagar.

    – Om jag inte hinner med alla pull requests i tid, kan jag komma att fördröja rc1 något för att hinna ikapp, skriver Torvalds i sitt veckobrev.

    Han betonar dock att detta inte ska tolkas som att sena bidrag kommer accepteras i högre utsträckning. Tvärtom kan en mer pressad tidsplan leda till striktare gränser för vad som släpps in.

    Inga överraskningar i 6.16

    När det gäller Linux 6.16, som nu är tillgänglig, är det en uppdatering med fokus på stabilitet. Den innehåller främst mindre justeringar av drivrutiner samt mindre kodändringar. Det är inte någon dramatisk uppdatering, vilket enligt Torvalds är positivt.

    – Det är en ganska lugn version med små uppdateringar, inga stora förändringar. Allt ser ut att fungera som det ska, konstaterar han.

    Sound Blaster AWE32‑fixen i Linux 6.16 – 25 år senare

    Ett av de mer färgstarka inslagen i Linux 6.16 är två små men avgörande patchar som väcker liv i Creative Sound Blaster AWE32/AWE64 – ett ISA‑ljudkort som såldes på 1990‑talet. Buggen, som rapporterades sent 2023 (Bug 218185), kunde frysa hela systemet eller skapa skrapljud när moderna ljud­servrar som PipeWire växlade DMA‑läge under uppspelning.

    ”Äkta retro‑riggar som uppgraderades till nya distros låste sig plötsligt – tack vare PipeWires automatiska DMA‑växling.”

    Vad orsakade problemet?

    • DMA‑lägesväxling “i farten” – registret programmerades om medan ett PCM‑flöde spelade.
    • PipeWire förvärrade felet – fler automatiska växlingar än med äldre ALSA‑anrop gjorde buggen reproducerbar.

    Lösningen i två patchar

    PatchEffektenCommit‑författare
    force‑disable DMA when mode is changedStänger av DMA, skriver om registret, aktiverar igen → eliminerar busshäng & brusTakashi Iwai
    block DMA mode change during active PCM streamVägrar byte om kortet spelar → stoppar riskabla skrivningarTakashi Iwai

    Båda togs in strax före 6.16‑rc3 och backportas även till LTS‑grenar.

    Varför är detta intressant 2025?

    • Retro‑entusiaster får stabilt FM‑ och SoundFont‑ljud utan krascher.
    • Virtuell pass‑through av ISA‑kort i t.ex. QEMU blir tillförlitlig.
    • Bevis på långsiktigt underhåll: Linux accepterar fixar för 30‑årig hårdvara – ingen lämnas efter.

    Påverkan för olika scenarier

    MiljöVad ändras med 6.16
    Fysisk AWE32/AWE64‑rigg + PipeWireSystemfrysningar och ljudglitchar försvinner
    Retro‑rigg utan PipeWireIngen märkbar skillnad
    Moderna datorer utan ISAIngen påverkan (endast några rader kod)

    Kort sagt: Linux 6.16 räddar ett klassiskt ljudkort från random krascher – ett charmigt exempel på hur kärnprojektet fortfarande vårdar sin mest nostalgiska hårdvara.

    Uppdatering via distributioner

    För de flesta användare är det inte rekommenderat att manuellt försöka installera Linux 6.16 – särskilt inte om man inte är van att hantera lågnivåkomponenter i systemet. De som använder snabbfotade Linuxdistributioner kan få den nya kärnan som en uppdatering inom kort, medan användare av långsammare system som Ubuntu kan få vänta tills nästa stora systemuppgradering.

    Sammanfattning

    • Linux 6.16 är släppt och innehåller huvudsakligen mindre drivrutinsfixar.
    • Linux 6.17 kan komma att försenas något på grund av Linus Torvalds resor i augusti.
    • Torvalds har redan fått in ett stort antal kodbidrag i förväg för att undvika problem.
    • En eventuell försening av rc1 (första releasekandidaten) skulle bara vara några dagar.
    • Sena kodbidrag kommer inte accepteras – bidragsgivare uppmanas att hålla sig till tidsplanen.

    https://kernel.org

    Nyheter Linux 6.16 på Teknisknivå

    • CPU & arkitektur: Intel APX (32 register), Intel TDX för krypterade VM, ny flagga CONFIG_X86_NATIVE_CPU, förbättrad AMD‑SBI‑support.
    • Grafik & acceleratorer: Nouveau känner igen NVIDIA Hopper/Blackwell, Intel Xe/Arc strömsparfunktioner, AMD GPU‑patchar för Strix Point.
    • Ljud & I/O: USB Audio Offload (musik även i viloläge) och DMABUF‑>TCP zero‑copy för snabbare nätverk.
    • Fil‑ & lagringssystem: XFS får stora atomära skrivningar, Ext4 “fast commit”‑optimering och stora folios, Btrfs 50 % snabbare metadata.
    • Minne & synk: Automatisk viktad NUMA‑interleaving, Futex2‑förbättringar med lägre lås‑latens.
    • Säkerhet & diagnostik: Coredump över AF_UNIX‑socket och fscrypt‑nycklar som skyddas i hårdvara.
    • Diverse drivrutiner: Apple M2 PCIe‑stöd, Magic Mouse 2 (USB‑C), nya Wi‑Fi/Bluetooth‑ID:n, Sound Blaster AWE32‑fix efter 25 år!

    Tips: Vänta på att din distribution pushar uppdateringen – egenkompilering rekommenderas bara för avancerade användare.

Etikett: kernel patchar

  • Multikernel: Linux tar steget bortom den enskilda kärnan

    Linux står inför en ny milstolpe. Med projektet Multikernel öppnas dörren för en framtid där flera Linux-kärnor kan samarbeta på samma maskin. Genom att bygga vidare på den beprövade kexec-tekniken vill utvecklarna skapa ett mer flexibelt och skalbart Linux – anpassat för moln, datacenter och hyperskala. Linux har alltid haft ett rykte om sig att…

  • Apple M2 Pro, Max och Ultra på väg in i Linux-kärnan

    Linuxvärlden tar ännu ett steg närmare full kompatibilitet med Apples hårdvara. Nu är Device Tree-filer för M2 Pro, Max och Ultra på väg in i den officiella Linux-kärnan. Bakom insatsen står Asahi Linux-utvecklare som, trots bakslag och hårt motstånd, fortsätter att bana väg för att pingviner världen över ska kunna köra Linux sömlöst på Apples…

  • Linux Kernel 6.16 är här – men Torvalds flaggar för möjlig försening av nästa version

    Den stabila versionen av Linux-kärnan 6.16 är nu officiellt släppt. Enligt projektledaren Linus Torvalds avslutades utvecklingscykeln på ett lugnt och stabilt sätt, utan några större överraskningar – något som gjorde att en åttonde releasekandidat aldrig behövde släppas. Men medan det nuvarande släppet är ute, riktas blicken redan mot nästa version, Linux 6.17 – som kan…