• OpenZFS 2.4.1 – stabilare lagring under ytan

    Två månader efter den senaste större versionen har OpenZFS fått en viktig uppdatering. Version 2.4.1 finslipar kompatibilitet, prestanda och stabilitet i det avancerade filsystem som används i allt från hemmabyggda lagringsservrar till professionella datacenter.

    Två månader efter version 2.4 har OpenZFS släppt 2.4.1, den första underhållsuppdateringen i serien. Det handlar inte om stora nya funktioner, utan om förbättringar som gör filsystemet stabilare, snabbare och mer kompatibelt med moderna operativsystem.

    OpenZFS är ett avancerat, öppet filsystem och volymhanterare som används i allt från hemmabyggda NAS-servrar till professionella lagringsmiljöer. Det är känt för funktioner som ögonblicksbilder, dataintegritet via checksummor, självläkning och effektiv replikering mellan system.

    Bredare och säkrare kompatibilitet

    Version 2.4.1 stöder Linuxkärnor från 4.18 upp till 6.19 samt FreeBSD 13.3 och nyare, inklusive 14-serien. En stor del av arbetet har lagts på att säkerställa kompatibilitet med Linux 6.19. Det gäller bland annat förbättringar i hur systemet byggs mot kärnan, hantering av krypteringskod och mer strikt kompilering.

    Även mindre vanliga arkitekturer som PowerPC och RISC-V har fått korrigeringar för att säkerställa att OpenZFS kan byggas utan problem på dessa plattformar.

    Korrekt hantering av lagringsutrymme

    En viktig bugg som nu är åtgärdad rör hur ledigt utrymme beräknas på så kallade special- och dedupliceringsenheter. Felaktig rapportering av tillgängligt lagringsutrymme kan i värsta fall skapa planeringsproblem i större lagringsmiljöer. Med den här uppdateringen blir utrymmesredovisningen mer tillförlitlig.

    Stabilare replikering och mottagning

    Flera förbättringar gäller hur data skickas och tas emot mellan system. Rättighetshanteringen för kommandot zfs send med flaggorna -w och -I har korrigerats. Aktivering av stora block vid mottagning fungerar nu bättre och problem kring funktionen large_microzap har åtgärdats. Även historikloggningen vid skapande av pooler har rättats.

    För administratörer innebär detta färre oväntade fel i backup- och replikationsflöden.

    Prestandaförbättringar i bakgrunden

    OpenZFS använder en avancerad cachemekanism kallad ARC. I version 2.4.1 har hur cachen töms justerats för att förbättra parallell hantering. Även förhämtning av databuffertar har förbättrats.

    Tiderna för scrub och resilver, alltså kontroll och återuppbyggnad av data, har minskats. Dessutom har hanteringen av asynkron radering effektiviserats. Sammantaget ger detta bättre respons under belastning, särskilt i system med många samtidiga operationer.

    Robustare deduplicering

    Deduplicering är en kraftfull men komplex funktion som gör att identiska datablock bara lagras en gång. I denna version har låsning och interna gränssnitt förbättrats för att minska konkurrens mellan trådar. Buffertstorlekar för komprimerade poster har justerats och vissa loggsökningar har flyttats utanför kritiska lås för att minska flaskhalsar.

    Detta gör systemet mer skalbart i miljöer där deduplicering används intensivt.

    Plattformsspecifika korrigeringar

    På FreeBSD har trådosäker debugkod som kunde orsaka allvarliga fel tagits bort. Kompilering för äldre i386-system har återställts och vissa föråldrade referenser har rensats bort.

    På Linux har minnesallokering förbättrats och äldre kodvägar i det så kallade SPL-lagret har städats bort, vilket gör koden säkrare och mer modern.

    Förbättrade verktyg och testsvit

    Flera kommandoradsverktyg har fått nya funktioner. zdb kan nu ange objekt-ID med en ny flagga, zfs clone kan skapa dataset utan att montera dem och zhack har fått nya debugfunktioner. Testsviten har också uppdaterats för att återspegla de senaste förändringarna och rätta tidigare testfel.

    En uppdatering som stärker helheten

    OpenZFS 2.4.1 är ingen dramatisk nyhet med stora rubriker. I stället är det en stabiliserande uppdatering som stärker kompatibilitet, prestanda och kodkvalitet. För den som driver lagringslösningar med höga krav på tillförlitlighet är det just sådana förbättringar som gör störst skillnad i längden.

    https://github.com/openzfs/zfs/releases/tag/zfs-2.4.1

    OpenZFS 2.4.1 – teknisk faktaruta
    Typ: Första underhållsrelease i 2.4-serien
    Plattformar:
    • Linux-kärnor: 4.18–6.19
    • FreeBSD: 13.3+ (inkl. 14.x)
    Kompatibilitet & byggfixar:
    • Fokus på Linux 6.19 (in-tree builds, GCM-dubbletter, inode-state, striktare –werror)
    • Byggfixar för Linux 6.18 på PowerPC och RISC-V
    Viktiga funktionella korrigeringar:
    • Rättar fel i “available space”-beräkning för special- och dedup-vdevs
    • Korrigerar behörighetshantering för zfs send -w -I
    • Bättre hantering av “large block” vid receive och fixar kring large_microzap
    • Korrigerad historikloggning för zpool create -t
    Prestanda:
    • Ökad ARC-eviction batching för bättre parallellism
    • Förbättrad dbuf prefetch-caching
    • Kortare minimaltider för scrub/resilver
    • Förbättrad timing i async destroy-processing
    Dedup & DDT:
    • Förbättrad låsning och gränssnitt (bl.a. _by_dnode()-ZAP)
    • Fixar för buffertstorlek vid komprimerade poster
    • Loggsökningar flyttade utanför lås för minskad contention
    Verktyg:
    • zdb: ny -O till -r för att ange objekt-ID
    • zfs clone: -u för att skapa dataset utan montering
    • zhack: “action idle” + -G för dump av debug-buffer
    Underhåll:
    • Shellscript-städning (färre bashisms, bättre shellcheck, säkrare variabler)
    • Dokumentationsförtydliganden (initrd och montering)
  • Linux 6.19 är här – stabil evolution och siktet inställt på 7.0

    Linux 6.19 markerar ännu ett steg i Linux-kärnans långsiktiga och stabila utveckling. Utan dramatiska förändringar men med en mängd tekniska förbättringar under ytan stärker den nya versionen prestanda, säkerhet och hårdvarustöd i allt från servrar och molnplattformar till inbyggda system och persondatorer. Samtidigt har Linus Torvalds bekräftat att nästa utgåva blir Linux 7.0 – inte som ett avsteg i utvecklingen, utan som en naturlig omnumrering i ett projekt som fortsätter att växa.

    Linux-kärnan fortsätter sin lugna men obevekliga utveckling. Med version 6.19 får vi en uppdatering som inte innehåller några dramatiska kursändringar, men som ändå förbättrar prestanda, säkerhet och skalbarhet på en lång rad områden. I sitt release-meddelande passade Linus Torvalds dessutom på att bekräfta att nästa version blir Linux 7.0, mest för att versionsnumren i 6-serien helt enkelt har blivit för stora och svåröverskådliga.

    Poängen är viktig: 7.0 innebär ingen ny utvecklingsmodell eller ”omstart” av Linux. Det är samma stabila, stegvisa förbättringar som tidigare – bara med ett renare versionsnummer.

    En av de mer intressanta nyheterna i Linux 6.19 handlar om minneshantering. Kärnan får nu stöd för AMD:s teknik för smart cache-injektion, vilket gör att vissa I/O-enheter kan placera data direkt i processorns L3-cache i stället för att gå via arbetsminnet. Det minskar fördröjningar och kan ge tydliga prestandavinster i system med höga dataflöden. På Intelsidan införs stöd för Linear Address-Space Separation, LASS, som stärker gränsen mellan kernelminne och användarutrymme och därmed minskar risken för spekulativa sidokanalsattacker.

    Arkitekturstödet har också utvecklats vidare. För IBM:s s390-plattform introduceras ett nytt gränssnitt för minnes-hotplug, samtidigt som stödet för gamla 31-bitars binärer tas bort. Plattformen får även stackskydd tack vare förbättringar i den kommande GCC 16-kompilatorn. På 64-bitars Arm-system har Linux nu stöd för MPAM, Arm Memory System Resource Partitioning and Monitoring, vilket gör det möjligt att övervaka och styra hur olika processer använder minnesresurser. Det är särskilt relevant i datacenter och realtidssystem.

    I kärnans inre mekanik märks flera förändringar som framför allt gynnar utvecklare och containerplattformar. Ett nytt systemanrop, listns(), gör det effektivare för användarutrymme att lista existerande namespaces. Samtidigt har referensräkningen för namespaces förbättrats för att förhindra att borttagna resurser ”återuppstår”. Signalhanteringen har också blivit mer informativ: processer som använder pidfd kan nu avgöra vilken signal som orsakade att en annan process avslutades med en core-dump. BPF-systemet har dessutom fått nya funktioner, bland annat stöd för indirekta hopp på x86.

    Lagring och filsystem har fått flera konkreta förbättringar. FUSE har nu bättre stöd för buffrade läsningar med stora minnessidor, och iomap-lagret kan spåra delvis uppdaterade folios för effektivare läsningar. Det virtuella filsystemet har utökats med återkallbara katalogdelegationer, något som förbättrar NFS-hantering. Btrfs har fått ett särskilt nedstängningsläge som låter pågående operationer avslutas kontrollerat samtidigt som nya blockeras, och ext4 kan nu hantera filsystem med blockstorlekar som är större än systemets sidstorlek.

    På hårdvarusidan har stödet breddats ytterligare. Nya drivrutiner har lagts till för bland annat Realtek-systemtimers, Intels minnes- och I/O-hubbar samt flera nya nätverkskort, både trådbundna och trådlösa. Det gör att Linux fortsätter att fungera väl även på helt ny hårdvara.

    Nätverksstacken har fått tydliga prestandalyft. En större förändring i hur TCP-sändning låses har resulterat i betydligt högre genomströmning under tung belastning. Dessutom kan sockets nu markeras som undantagna från globala minnesgränser, medan begränsningar i stället tillämpas inom containrar. Det ger både bättre prestanda och bättre isolering i moderna molnmiljöer.

    Även säkerheten har stärkts. Linux 6.19 innehåller nya kryptografiska hashfunktioner i form av SHA-3 och BLAKE2b, tillsammans med tillhörande dokumentation. Säkerhetsmoduler informeras nu när memfd-filer skapas, vilket gör det möjligt att fatta policybeslut om dessa filer i realtid. SELinux har redan stöd för detta. Därutöver förbättras hanteringen av transparenta huge pages för enhetsminne, och zram har optimerats med effektivare skrivbuntning.

    För virtualisering och containrar har guest_memfd() fått stöd för NUMA-policyer, vilket ger bättre kontroll över var minne allokeras i virtuella miljöer. Stödet för konfidentiell databehandling har också byggts ut, bland annat med kryptering och autentisering av PCIe-länkar samt ett nytt konfidentiellt VMBus-läge för Hyper-V. Det här är viktiga steg för säkra moln och isolerade arbetslaster.

    Slutligen finns även små förbättringar som märks direkt i vardagen. En ny konsolfont, Terminus 10×18, har lagts till för att göra text mer lättläst på skärmar med mellanhög upplösning – en detalj som uppskattas av alla som arbetar i textkonsolen.

    Linux 6.19 finns redan att ladda ner från kernel.org, och användare av rullande distributioner kommer att få uppdateringen först. För övriga distributioner dyker den upp successivt under de kommande veckorna. Samtidigt kan Linux-världen se fram emot nästa steg: Linux 7.0, ett nytt versionsnummer för samma långsiktigt stabila utveckling.

    https://kernel.org

    TEKNISK FAKTARUTA: LINUX KERNEL 6.19
    Status
    Stabil release
    Nästa versionssteg
    Linux 7.0 (numreringsbyte, ej ny utvecklingsfas)
    CPU & minne
    AMD: Smart Data Cache Injection (I/O → L3 cache)
    Intel: LASS (starkare separation kernel/user)
    Arkitekturer
    s390: nytt gränssnitt för memory hotplug, 31-bitars binärer bort, stack-protector (GCC 16)
    arm64: MPAM-stöd (resurspartitionering/monitorering)
    Kärn-API & internsystem
    listns(): effektivare listning av namespaces
    Förbättrad namespace-refcount & pidfd-signalinfo
    BPF: indirekta hopp via särskild map-typ (x86), dynptr för strukturerad fil-läsning
    Filsystem & block-I/O
    FUSE: bättre buffrade läsningar med stora folios
    iomap: spårar delvis uppdaterade folios
    VFS/NFS: “recallable directory delegations”
    Btrfs: shutdown state (slutför pågående, stoppar nya)
    ext4: stöd för blockstorlek > page size
    Nätverk
    TCP: omarbetad transmit locking → högre throughput under last
    Sockets: kan undantas global minnesbudget, policy i containrar
    Säkerhet & krypto
    SHA-3 & BLAKE2b i kryptobiblioteket
    LSM-notifiering vid memfd-create (SELinux-stöd)
    Virtualisering & “confidential computing”
    guest_memfd(): NUMA-policyer
    PCIe: link-kryptering + enhetsautentisering
    Hyper-V: confidential VMBus
    Övrigt
    THP för device-private memory
    zram: writeback batching
    Ny konsolfont: Terminus 10×18

Etikett: kernel 6.19

  • OpenZFS 2.4.1 – stabilare lagring under ytan

    Två månader efter den senaste större versionen har OpenZFS fått en viktig uppdatering. Version 2.4.1 finslipar kompatibilitet, prestanda och stabilitet i det avancerade filsystem som används i allt från hemmabyggda lagringsservrar till professionella datacenter. Två månader efter version 2.4 har OpenZFS släppt 2.4.1, den första underhållsuppdateringen i serien. Det handlar inte om stora nya funktioner,…

  • Linux 6.19 är här – stabil evolution och siktet inställt på 7.0

    Linux 6.19 markerar ännu ett steg i Linux-kärnans långsiktiga och stabila utveckling. Utan dramatiska förändringar men med en mängd tekniska förbättringar under ytan stärker den nya versionen prestanda, säkerhet och hårdvarustöd i allt från servrar och molnplattformar till inbyggda system och persondatorer. Samtidigt har Linus Torvalds bekräftat att nästa utgåva blir Linux 7.0 – inte…