Kernel
Nakon dva meseca razvoja, Linus Torvalds predstavio je izlazak nove verzije Linux kernela 5.10, verzija koja stiže sa statusom ogranka sa dugim periodom podrške, čija će ažuriranja biti objavljena najmanje dvije godine.
Značajne promjene uključuju Ova nova verzija uključuje podršku za mehanizam zaštite MemTag za ARM64 sisteme, “nosymfollow” opcija montaže, značajne Ext4 optimizacije, Ispravka XFS 2038, novi sistemski poziv process_madvise, poboljšana podrška za AMD SEV putem šifriranja registra procesora, mogućnost pauziranja BPF programa.
Nova verzija primio 17470 ispravki od 2062 programera, veličina zakrpe: 64 MB (promjene su uticale na 15101 fajl, dodano 891932 linija koda, uklonjeno 619716 linija). Otprilike 42% svih promjene uvedene u 5.10 odnose se na drajvere uređaja, otprilike 16% izmjena se odnosi na ažuriranje koda specifičnog za hardverske arhitekture, 13% se odnosi na mrežni stog, 3% se odnosi na sistem datoteka, a 3% se odnosi na interne podsisteme kernela.
Glavne vijesti u Linuxu 5.10
Od glavnih promjena koje su predstavljene, Možemo otkriti da je za ext4 dodan mod brzih potvrda (fast_commit), koji značajno smanjuje kašnjenja u mnogim operacijama datoteka zbog bržeg ispiranja metapodataka na disk prilikom izvršavanja fsync() poziva. U normalnim okolnostima, izvršavanje fsync() sinhronizuje redundantni skup metapodataka. U režimu fast_commit, samo metapodaci neophodni za oporavak sistema datoteka u slučaju pada prenose se u registar, što ubrzava fsync() pozive i poboljšava performanse operacija koje aktivno manipulišu metapodacima.
Dok je za Btrfs uključuje važne optimizacije performansi koje se odnose na fsync() operacije. Smanjenje svađe u log mutex-u rezultiralo je povećanjem propusnosti za 4% i smanjenjem kašnjenja od 14% pri pokretanju benč testa sa 32 klijenta. Uklanjanje dodatnih urezivanja za veze i promjene imena povećalo je propusnost za 6% i smanjilo kašnjenje za 30%. Ograničavanje fsync-a da čeka samo na povratne zapise povećalo je performanse za 10-40%.
Takođe, Btrfs implementacija direktnog I/O-a (direktni io) je premještena u iomap okvir.
XFS dodaje promjene inode metapodataka za rješavanje problema prelijevanja tipa podataka 32-bitni time_t u 2038. Slične promjene, koje su pomjerile prelivanje brojača vremena na godinu 2468, dodane su kodu za izračunavanje vremena diskovne kvote. btree, što omogućava više provjera redundancije i brže vrijeme montiranja.
Za podsistem FUSE implementirana je podrška DAX operacija za direktan pristup sistemu datoteka, zaobilazeći keš stranice bez uređaja za blokiranje na nivou aplikacije koji se koristi da bi se izbjeglo dvostruko keširanje virtiofs organizirajući zajednički pristup gostujućim sistemima, direktorijima i datotekama. Virtiofs takođe dodaje podršku za odvojeno montiranje particija sa različitim tačkama montiranja na host sistemu.
Sistem datoteka F2FS dodaje novi način prikupljanja smeća ATGC (Age Threshold Garbage Collection), poboljšana podrška za zonirane NVMe uređaje i veća brzina dekompresije za komprimirane podatke.
U F2FS i Ext4, redizajniran je način na koji radite sa imenima datoteka koje ne razlikuju velika i mala slova; Odlučeno je da se objedini implementacija imena datoteka neosjetljivih na velika i mala slova premeštanjem pridruženog koda u zajedničku biblioteku.
Druga važna promjena je u io_uring asinhroni I/O interfejs koji dodaje mogućnost kreiranja ograničenih prstenova koji se može bezbedno deliti sa nepouzdanim procesom. Ova funkcija omogućava osnovnoj aplikaciji da selektivno ograniči pristup samo svojim deskriptorima pojedinačnih datoteka za upotrebu u aplikacijama trećih strana putem io_uringa, plus zastavica PIDFD_NONBLOCK je dodana u sistemski poziv pidfd_open() da bi se kreirao neblokirajući deskriptor datoteke (analogno O_NONBLOCK za pidfd).