Linux 6.7 kjarnaútgáfa

Eftir tveggja mánaða þróun kynnti Linus Torvalds útgáfu Linux kjarna 6.7. Meðal athyglisverðustu breytinga: samþætting Bcachefs skráarkerfisins, hætta á stuðningi við Itanium arkitektúr, hæfni Nouvea til að vinna með GSP-R fastbúnaði, stuðningur við TLS dulkóðun í NVMe-TCP, hæfni til að nota undantekningar í BPF, stuðningur við futex í io_uring, hagræðingu á afköstum fq (Fair Queuing) tímaáætlunargerðar ), stuðningur við TCP-AO viðbótina (TCP Authentication Option) og getu til að takmarka nettengingar í Landlock öryggiskerfi, bætti aðgangsstýringu við notendanafnrými og io_uring í gegnum AppArmor.

Nýja útgáfan inniheldur 18405 lagfæringar frá 2066 forriturum, plástrastærðin er 72 MB (breytingarnar höfðu áhrif á 13467 skrár, 906147 línum af kóða var bætt við, 341048 línum var eytt). Síðasta útgáfan var með 15291 lagfæringar frá 2058 forriturum, plástrastærðin var 39 MB. Um 45% allra breytinga sem kynntar eru í 6.7 tengjast tækjum, um það bil 14% breytinga tengjast uppfærslukóða sem er sértækur fyrir vélbúnaðararkitektúr, 13% tengjast netstafla, 5% tengjast skráarkerfum og 3% tengjast innri kjarna undirkerfum.

Helstu nýjungar í kjarna 6.7:

  • Diska undirkerfi, I/O og skráarkerfi
    • Kjarninn samþykkir Bcachefs skráarkerfiskóðann, sem reynir að ná frammistöðu, áreiðanleika og sveigjanleika XFS, ásamt þáttum í háþróaðri virkni sem finnast í Btrfs og ZFS. Til dæmis styður Bcachefs eiginleika eins og að innihalda mörg tæki í skipting, fjöllaga drifskipulag (neðsta lagið með oft notuð gögn byggð á hröðum SSD diskum og efsta lagið með minna notuðum gögnum frá hörðum diskum), afritun (RAID) 1/10), skyndiminni , gagnsæ gagnaþjöppun (LZ4, gzip og ZSTD stillingar), ástandssneiðar (skyndimynd), sannprófun á heiðarleika með því að nota eftirlitstölur, getu til að geyma Reed-Solomon villuleiðréttingarkóða (RAID 5/6), geyma upplýsingar í dulkóðað form (ChaCha20 og Poly1305 eru notuð). Hvað varðar frammistöðu er Bcachefs á undan Btrfs og öðrum skráarkerfum sem byggjast á Copy-on-Write vélbúnaðinum og sýnir rekstrarhraða nálægt Ext4 og XFS.
    • Btrfs skráarkerfið kynnir einfaldaða kvótaham sem gerir þér kleift að ná meiri afköstum með því að rekja umfang aðeins í undirdeilunni sem þau eru búin til í, sem einfaldar verulega útreikninga og bætir afköst, en leyfir þér ekki að taka tillit til umfangs sem deilt er í nokkrum undirskilrúm.
    • Btrfs hefur bætt við nýrri „röndtré“ gagnaskipulagi, hentugur fyrir rökræna kortlagningu umfangs í aðstæðum þar sem líkamleg kortlagning passa ekki á milli tækja. Uppbyggingin er nú notuð í útfærslum á RAID0 og RAID1 fyrir svæðisbundin blokkartæki. Í framtíðinni ætla þeir að nota þessa uppbyggingu í RAID á hærra stigi, sem mun leysa fjölda vandamála sem eru til staðar í núverandi útfærslu.
    • Ceph skráarkerfið útfærir stuðning við að kortleggja notendaauðkenni uppsettra skráakerfa, notað til að passa við skrár tiltekins notanda á uppsettri erlendri skiptingu við annan notanda á núverandi kerfi.
    • Bætti við möguleikanum á að tilgreina uid og gid á mount við efivarfs til að leyfa ferlum sem ekki eru rótar að breyta UEFI breytum.
    • Bætti ioctl símtölum við exFAT til að lesa og breyta FS eiginleikum. Bætt við meðhöndlun á núllstærðarmöppum.
    • F2FS útfærir getu til að nota 16K kubba.
    • Skipt hefur verið um sjálfvirka festingarbúnaðinn til að nota nýja skiptingauppsetningarforritið.
    • OverlayFS býður upp á „lowerdir+“ og „datadir+“ tengingarvalkosti. Bætti við stuðningi við hreiðraða uppsetningu á OverlayFS með xattrs.
    • XFS hefur fínstillt CPU álagið í rauntíma úthlutunarkóðanum. Getan til að framkvæma samtímis lestur og FICLONE aðgerðir er veittur.
    • EXT2 kóðanum hefur verið breytt til að nota blaðsíðublöð.
  • Minni og kerfisþjónusta
    • Stuðningur við ia64 arkitektúrinn sem notaður er í Intel Itanium örgjörvum, sem var algjörlega hætt árið 2021, hefur verið hætt. Itanium örgjörvar voru kynntir af Intel árið 2001, en ia64 arkitektúrinn náði ekki að keppa við AMD64, aðallega vegna meiri frammistöðu AMD64 og mýkri umskipti frá 32-bita x86 örgjörvum. Fyrir vikið færðust hagsmunir Intel í þágu x86-64 örgjörva og hlutur Itanium var áfram HP Integrity netþjónar, en pantanir á þeim voru stöðvaðar fyrir þremur árum. Kóði fyrir ia64 stuðning var fjarlægður úr kjarnanum aðallega vegna langvarandi skorts á stuðningi við þennan vettvang, á meðan Linus Torvalds lýsti yfir vilja sínum til að skila ia64 stuðningi við kjarnann, en aðeins ef það er viðhaldsaðili sem getur sýnt fram á hágæða stuðningur við þennan vettvang utan aðalkjarnans í að minnsta kosti eitt ár.
    • Bætti við „ia32_emulation“ kjarnalínuskipunarfæribreytunni, sem gerir þér kleift að virkja eða slökkva á stuðningi við 32-bita ham eftirlíkingu í kjarna sem eru smíðaðir fyrir x86-64 arkitektúrinn á ræsingarstigi. Á hagnýtu hliðinni, nýi valkosturinn gerir þér kleift að byggja kjarnann með stuðningi fyrir samhæfni við 32-bita forrit, en slökkva á þessari stillingu sjálfgefið til að draga úr árásarvektor á kjarnanum, þar sem eindrægni API er minna prófað en aðalkjarninn viðmót.
    • Áframhaldandi flutningur á breytingum frá Rust-for-Linux útibúinu sem tengist notkun Rust tungumálsins sem annað tungumál til að þróa rekla og kjarnaeiningar (Rust stuðningur er ekki virkur sjálfgefið og leiðir ekki til þess að Rust sé tekið með í nauðsynlegar samsetningarháðar fyrir kjarnann). Nýja útgáfan fer yfir í að nota Rust 1.73 útgáfuna og býður upp á sett af bindingum til að vinna með vinnuraðir.
    • Það er hægt að nota binfmt_misc vélbúnaðinn til að bæta við stuðningi við ný keyranleg skráarsnið (til dæmis til að keyra samansett Java eða Python forrit) innan aðskildra nafna sem eru ekki forréttindi.
    • Cgroup stjórnandi cpuset, sem gerir þér kleift að stjórna notkun CPU kjarna þegar þú keyrir verkefni, veitir skiptingu í staðbundna og ytri skipting, sem eru mismunandi eftir því hvort foreldri cgroup er réttur rót hluti eða ekki. Nýjum stillingum „cpuset.cpus.exclusive“ og „cpuset.cpus.excluisve.effective“ hefur einnig verið bætt við cpuset fyrir eingöngu CPU-bindingu.
    • BPF undirkerfið útfærir stuðning við undantekningar, sem eru unnar sem neyðarútgangur frá BPF forriti með getu til að vinda ofan af stafla ramma á öruggan hátt. Að auki leyfa BPF forrit notkun kptr bendila í tengslum við CPU.
    • Stuðningur við aðgerðir með futex hefur verið bætt við io_uring undirkerfið og nýjar aðgerðir hafa verið innleiddar: IORING_OP_WAITID (ósamstilltur útgáfa af waitid), SOCKET_URING_OP_GETSOCKOPT (getsockoptand valkostur), SOCKET_URING_OP_SETSOCKOPT (setsockopt valmöguleikar_ og RETIOAD stöðva ekki MULTIRING) það eru gögn eða er ekki fullt biðminni).
    • Bætt við útfærslu á léttum eintengdum FIFO biðröðum sem krefjast snúningslás eingöngu til að fjarlægja biðröð í ferlisamhengi og sleppa við snúningslás fyrir atómaviðbætur við biðröðina í hvaða samhengi sem er.
    • Bætti við hringjabuffi „objpool“ með stigstærðri útfærslu á afkastamikilli biðröð til að úthluta og skila hlutum.
    • Upphaflega hluta breytinganna hefur verið bætt við til að innleiða nýja futex2 API, sem hefur betri afköst á NUMA kerfum, styður aðrar stærðir en 32 bita og er hægt að nota í stað margfaldaða futex() kerfiskallsins.
    • Fyrir ARM32 og S390x arkitektúra hefur stuðningi við núverandi sett (cpuv4) af BPF leiðbeiningum verið bætt við.
    • Fyrir RISC-V arkitektúrinn er hægt að nota Shadow-Call Stack athugunarhaminn sem er tiltækur í Clang 17, hannaður til að verjast því að skrifa yfir aftur heimilisfangið frá falli ef biðminni flæðir yfir staflann. Kjarninn í vörninni er að vista heimilisfangið í sérstökum „skugga“ stafla eftir að stjórn hefur verið flutt yfir í aðgerð og endurheimt þetta heimilisfang áður en aðgerðinni er hætt.
    • Nýrri snjallminniskönnunarstillingu hefur verið bætt við vélbúnaðinn til að sameina eins minnissíður (KSM: Kernel Samepage Merging), sem rekur árangurslausar skannaðar síður og dregur úr styrkleika endurskönnunar þeirra. Til að virkja nýja stillinguna hefur /sys/kernel/mm/ksm/smart_scan stillingunni verið bætt við.
    • Bætti við nýrri ioctl skipun PAGEMAP_SCAN, sem, þegar hún er notuð með userfaultfd(), gerir þér kleift að ákvarða staðreyndir um að skrifa á tiltekið minnisvið. Nýja eiginleikann, til dæmis, er hægt að nota í kerfinu til að vista og endurheimta ástand CRIU ferla eða í leikjavörn gegn svindli.
    • Í samsetningarkerfinu, ef Clang þýðandinn er tiltækur, er samsetning dæma um að nota perf undirkerfið, skrifað sem BPF forrit, sjálfgefið virkt.
    • Gamla videobuf lagið, sem var notað til að stjórna framebuffers í undirkerfi fjölmiðla og var skipt út fyrir nýja útfærslu á videobuf10 fyrir meira en 2 árum síðan, hefur verið fjarlægt.
  • Sýndarvæðing og öryggi
    • Möguleikinn á að dulkóða gögn í blokkum sem eru minni en blokkastærðin í skráarkerfinu hefur verið bætt við fscrypt undirkerfið. Þetta gæti verið nauðsynlegt til að virkja dulkóðunarkerfi vélbúnaðar sem styðja aðeins litlar blokkir (til dæmis er hægt að nota UFS stýringar sem styðja aðeins 4096 blokkastærð með skráarkerfi með 16K blokkastærð).
    • „iommufd“ undirkerfið, sem gerir þér kleift að stjórna IOMMU (I/O Memory-Management Unit) minnissíðutöflum í gegnum skráarlýsingar úr notendarými, hefur bætt við rekstri gagna sem ekki hefur enn verið skolað úr skyndiminni (óhreint) fyrir DMA aðgerðir, sem eru nauðsynlegar til að ákvarða minni með óhreinsuðum gögnum meðan á ferliflutningi stendur.
    • Stuðningur við að skilgreina aðgangsstýringarreglur fyrir TCP-innstungur hefur verið bætt við Landlock vélbúnaðinn, sem gerir þér kleift að takmarka samskipti hóps ferla við ytra umhverfið. Til dæmis er hægt að búa til reglu sem leyfir aðeins aðgang að netgátt 443 til að koma á HTTPS tengingum.
    • AppArmor undirkerfið hefur bætt við getu til að stjórna aðgangi að io_uring vélbúnaðinum og búa til notendanafnarými, sem gerir þér kleift að velja valinn aðgang að þessum eiginleikum aðeins að ákveðnum ferlum.
    • Bætt við API fyrir staðfestingu sýndarvélar til að sannreyna heilleika ræsiferli sýndarvélarinnar.
    • LoongArch kerfi styðja sýndarvæðingu með því að nota KVM hypervisor.
    • Þegar KVM hypervisor er notaður á RISC-V kerfum hefur stuðningur við Smstateen viðbótina birst, sem hindrar sýndarvélina í að fá aðgang að örgjörvaskrám sem eru ekki beinlínis studdar af hypervisornum. Bætti einnig við stuðningi við notkun Zicond viðbótarinnar í gestakerfum, sem gerir kleift að nota nokkrar skilyrtar heiltöluaðgerðir.
    • Í x86-byggðum gestakerfum sem keyra undir KVM eru allt að 4096 sýndar örgjörvar leyfðir.
  • Net undirkerfi
    • NVMe-TCP (NVMe over TCP) bílstjórinn, sem gerir þér kleift að fá aðgang að NVMe drifum yfir netið (NVM Express over Fabrics) með TCP samskiptareglunum, hefur bætt við stuðningi við að dulkóða gagnaflutningsrásina með TLS (með KTLS og bakgrunnsferli í notendarými tlshd fyrir tengingarviðræður).
    • Frammistaða fq (Fair Queuing) pakkaáætlunarbúnaðarins var fínstillt, sem gerði það mögulegt að auka afköst um 5% undir miklu álagi í tcp_rr (TCP Request/Response) prófinu og um 13% með ótakmörkuðu flæði UDP pakka.
    • TCP bætir við valfrjálsu míkrósekúndu-nákvæmni tímastimpli (TCP TS) getu (RFC 7323), sem gerir ráð fyrir nákvæmari leynd mati og fullkomnari stjórnunareiningum. Til að virkja það geturðu notað skipunina „ip route add 10/8 ... features tcp_usec_ts“.
    • TCP staflan hefur bætt við stuðningi við TCP-AO viðbótina (TCP Authentication Option, RFC 5925), sem gerir það mögulegt að sannreyna TCP hausa með MAC kóða (Message Authentication Code), með því að nota nútímalegri reiknirit HMAC-SHA1 og CMAC-AES- 128 í staðinn áður tiltækur TCP-MD5 valkostur byggður á eldri MD5 reikniritinu.
    • Ný gerð sýndarnettækja „netkit“ hefur verið bætt við, gagnaflutningsrökfræðin sem er stillt með BPF forriti.
    • KSMBD, útfærsla á kjarnastigi SMB netþjóns, hefur bætt við stuðningi við að leysa skráarnöfn sem innihalda staðgöngupör af samsettum stöfum.
    • NFS hefur bætt útfærslu þráða með RPC þjónustu. Bætti við stuðningi við skrifframsal (fyrir NFSv4.1+). NFSD hefur bætt við stuðningi við rpc_status netlink meðhöndlunina. Bættur stuðningur við NFSv4.x viðskiptavini við endurútflutning til knfsd.
  • Оборудование
    • Upphaflegur stuðningur fyrir GSP-RM fastbúnað hefur verið bætt við Nouveau kjarnaeininguna, sem er notuð í NVIDIA RTX 20+ GPU til að færa frumstillingar- og GPU-stýringaraðgerðir til hliðar á sérstakri GSP örstýringu (GPU System Processor). GSP-RM stuðningur gerir Nouveau ökumanninum kleift að vinna í gegnum fastbúnaðarsímtöl, frekar en að forrita vélbúnaðarsamskipti beint, sem gerir það mun auðveldara að bæta við stuðningi við nýjar NVIDIA GPUs með því að nota forbyggð símtöl fyrir frumstillingu og orkustjórnun.
    • AMDGPU bílstjórinn styður GC 11.5, NBIO 7.11, SMU 14, SMU 13.0 OD, DCN 3.5, VPE 6.1 og DML2. Bættur stuðningur við óaðfinnanlega hleðslu (ekkert flökt þegar skipt er um myndbandsstillingu).
    • i915 bílstjórinn bætir við stuðningi við Intel Meteor Lake flögur og bætir við upphaflegri útfærslu á Intel LunarLake (Xe 2).
    • Bætt við stuðningi við ósamhverfar sendingarrásir bætt við USB4 v2 (120/40G) forskriftina.
    • Bætt við stuðningi við ARM SoC: Qualcomm Snapdragon 720G (notað í Xiaomi snjallsímum), AMD Pensando Elba, Renesas, R8A779F4 (R-Car S4-8), USRobotics USR8200 (notað í beinar og NAS).
    • Bætti við stuðningi fyrir Fairphone 5 snjallsímann og ARM borð Orange Pi 5, QuartzPro64, Turing RK1, Variscite MX6, BigTreeTech CB1, Freescale LX2162, Google Spherion, Google Hayato, Genio 1200 EVK, RK3566 Powkiddy RGB30.
    • Bætti við stuðningi fyrir RISC-V töflur Milk-V Pioneer og Milk-V Duo.
    • Bætt við stuðningi við hljóðviðmót HUAWEI fartölva sem fylgja AMD örgjörvum. Bætti við stuðningi við viðbótarhátalara sem settir eru upp á Dell Oasis 13/14/16 fartölvur. Bætt við stuðningi fyrir innbyggða hátalara ASUS K6500ZC. Bætti við stuðningi fyrir hljóðleysisvísirinn á HP 255 G8 og G10 fartölvum. Bætti við stuðningi fyrir acp6.3 hljóðrekla. Bætti við stuðningi við Focusrite Clarett+ 2Pre og 4Pre faglega upptökuviðmót.

Á sama tíma myndaði Latin American Free Software Foundation útgáfu af algjörlega ókeypis kjarna 6.7 - Linux-libre 6.7-gnu, hreinsaður af hlutum fastbúnaðar og rekla sem innihalda ófrjálsa íhluti eða kóðahluta, umfang þeirra er takmarkað. af framleiðanda. Í útgáfu 6.7 hefur blobhreinsunarkóði verið uppfærður í ýmsum reklum og undirkerfum, til dæmis í amdgpu, nouveau, adreno, mwifiex, mt7988, ath11k, avs og btqca rekla. Kóðinn til að hreinsa localtalk og rtl8192u reklana hefur verið fjarlægður vegna útilokunar þeirra frá kjarnanum. Fjarlægði óþarfa íhluti til að þrífa xhci-pci, rtl8xxxu og rtw8822b rekla, áður bætt við fyrir mistök. Hreinsaði upp blob nöfn í dts skrám fyrir Aarch64 arkitektúrinn. Fjarlægði blett í nýju driverunum mt7925, tps6598x, aw87390 og aw88399.

Heimild: opennet.ru

Bæta við athugasemd