Kjarnaútgáfa Linux 6.17

Eftir tveggja mánaða þróunarvinnu gaf Linus Torvalds út kjarnann. Linux 6.17. Meðal athyglisverðustu breytinganna: bætt afköst Btrfs, file_getattr() og file_setattr() kerfisköll, sameining stillinga fyrir einn örgjörva og marga örgjörva í verkefnaáætluninni, DAMON_STAT eining með tölfræði um aðgang að minni, stuðningur við Live patches á ARM64 kerfum, sending kjarnadumpa í gegnum AF_UNIX tengið, takmörkun á SCHED_EXT í gegnum cgroup, einfölduð stilling á vernd gegn veikleikum örgjörva, innbygging á Clang með frumstillingu breyta á staflanum, vörn gegn /proc skopstælingum, útvíkkun á RV (Runtime Verification) undirkerfinu, takmörkun á AF_UNIX tengi í gegnum AppArmor, TCP DualPI2 reiknirit fyrir umferðarstjórnun.

Nýja útgáfan inniheldur 14334 lagfæringar frá 2118 forriturum, með uppfærslustærð upp á 46 MB (breytingar höfðu áhrif á 12841 skrá, 646654 línum af kóða var bætt við og 398782 línum var fjarlægt). Fyrri útgáfan innihélt 15924 lagfæringar frá 2145 forriturum, með uppfærslustærð upp á 50 MB. Um 43% allra breytinga í 6.17 tengjast tækjareklum, um það bil 12% breytinganna tengjast uppfærslum á kóða sem er sértækur fyrir vélbúnaðararkitektúr, 14% tengjast netkerfinu, 4% tengjast skráarkerfum og 3% tengjast innri kjarnaundirkerfum.

Helstu nýjungar í kjarna 6.17 (1, 2, 3):

  • Diska undirkerfi, I/O og skráarkerfi
    • Btrfs býður nú upp á tilraunastuðning fyrir stór skjalasöfn, sem dregur úr kostnaði og bætir afköst ákveðinna aðgerða. Skyndiminni fyrir beiðnir í bitmap fyrir úthlutun lauss pláss hefur verið innleitt, sem eykur afköst við gerð tómra skráa um 20%. Afköst fyrir lestur hafa verið bætt í kerfum sem nota gagnaþjöppun. Lyklar í XArray uppbyggingunni eru nú þéttari, sem eykur geymsluþéttni hnúta í útvíkkunartrénu og dregur úr fjölda laufhnúta um 50-70%. Viðbótar þjöppunarstillingar hafa verið veittar fyrir afbrotin útvíkkun.
    • Ext4 skráakerfið styður nú biðminnislausn I/O með RWF_DONTCACHE flagginu, sem veldur því að gögn eru fjarlægð úr skyndiminninu á síðunni strax eftir að aðgerðinni er lokið.
    • EROFS skráakerfið styður nú þjöppun lýsigagna.
    • NFS-þjónninn getur nú úthlutað skrifaðgerðum til viðskiptavina sem opna skrár í skrifham.
    • FALLOC_FL_WRITE_ZEROES fáninn hefur verið bætt við kerfiskallið fallocate(). Þessi fáni gerir kleift að fylla út tiltekið svið í skrá með því að nota WRITE_ZERO skipunina, sem sumir SSD diskar styðja og framkvæma útfyllingu án inntaks/úttaksaðgerða. Þessi valkostur er aðeins í boði í ext4 skráarkerfum eins og er.
    • Bætti við kerfisköllum file_getattr() og file_setattr() til að stjórna inode eigindum tiltekinnar skráar.
    • Rekstrarforritið „pktcdvd“ fyrir vinnu með ljósleiðara í hópham, sem var merkt sem úrelt árið 2016, hefur verið fjarlægt.
    • Bcachefs FS í kjarnanum Linux Bcachefs hefur verið fært í ytri viðhaldsstillingu, sem þýðir að breytingar á Bcachefs verða ekki lengur samþykktar í aðalkjarnanum, en skráarkerfið verður áfram í kjarnakóðagrunninum. Þróun Bcachefs mun fara fram utan kjarnakóðagrunnsins þar til Kent Overstreet sýnir fram á hæfni sína til að hafa rétt samskipti við aðra kjarnaforritara og fylgja viðurkenndum þróunarleiðbeiningum.
  • Minni og kerfisþjónusta
    • Stuðningur við stillingar fyrir einn örgjörva hefur verið fjarlægður úr verkefnaáætluninni. Í kerfum með einn örgjörva ætti nú að nota kjarna sem eru smíðaðir fyrir fjölörgjörvakerfi (SMP). Kóðinn fyrir einn örgjörva og fjölörgjörvakerfi hefur verið sameinaður og óþarfa ósjálfstæði á kjarnafæribreytunni CONFIG_SMP hefur verið fjarlægður.
    • Kjarnaeiningin DAMON_STAT (Data Access Monitoring Results Stat) hefur verið bætt við. Hún gerir kleift að fylgjast með aðgangi að vinnsluminni með því að nota DAMON (Data Access MONitor) undirkerfið. Einingin veitir tölfræði um óvirkni (memory_idle_ms_percentiles) og áætlaða minnisbandvídd (estimated_memory_bandwidth).
    • Í kerfum með ARM64 arkitektúr hefur verið innleitt stuðningur við Live patches, sem gerir þér kleift að beita lagfæringum á kjarnanum. Linux á flugu, án þess að endurræsa eða stöðva kerfið.
    • Í lágmarks C bókasafninu nolibc, sem fylgir frumkóði kjarnans Linux og býður upp á umbúðir utan um grunn kerfisköll, sem styður SuperH, x32, MIPS n32 og MIPS n34 arkitektúrana.
    • Möguleikinn á að senda innihald kjarnadumps í gegnum AF_UNIX tengið hefur verið stækkaður, sem gerir kleift að búa til öruggari kjarnadump-meðhöndlara í notendarými sem reiða sig ekki á að kjarninn kalli á forréttindaferla. Nýja útgáfan bætir við samskiptareglum til að búa til ... netþjónum, sem getur stjórnað kjarnadumpvinnslu á verkefnastigi. Til dæmis er hægt að hunsa kjarnadump fyrir suma ferla en senda þá í gegnum tengi fyrir aðra. Sérstök frumgerð af netþjóni fyrir stjórnun kjarnadumps hefur verið þróuð.
    • Bætti við skipanalínuvalkostinum „crashkernel=size,cma“ í kjarna til að panta minnisrými í gegnum CMA (Contiguous Memory Allocator) til að geyma kjarnahrunsgögn.
    • pidfd-kerfinu hefur verið stækkað til að leyfa notkun á ferla-sértækum auðkennum, sem ólíkt pid eru ekki endurúthlutanlegar. Möguleikinn á að binda útvíkkaða eiginleika við pidfd úr notendarými hefur verið bætt við. Nú er hægt að opna skráarlýsingar fyrir pidfd með open_by_handle_at() fallinu án þess að bindast skráarkerfinu. Innri upplýsingar sem kjarninn býr til með pidfd eru nú bundnar við ferlið, ekki pidfd, og eru varðveittar á milli enduropnana sama ferlis.
    • Fallið bpf_cgroup_read_xattr() til að lesa útvíkkaðar skráareigindir hefur verið bætt við BPF undirkerfið. BPF forrit styðja nú staðlaðar strengjaaðgerðir eins og bpf_strcmp, bpf_strnchr, bpf_strchrnul, bpf_strlen og bpf_strspn, sem virka í lesstýrðum ham. Staðlaða stdout og stderr straumana er nú hægt að nota til að hafa samskipti við íhluti notendarýmis. Fyrir kerfi sem byggja á LoongArch arkitektúrnum styður BPF nú breytilega kóðabreytingu, BPF trampólínkerfið (sem dregur úr símtalskostnaði milli kjarnans og BPF forrita) og ræsingu forrita sem nota struct_ops til að búa til kjarnafallshöndlara í gegnum BPF.
    • Tímavörslukerfið styður nú hjálparklukkur, sem eru ekki tengdar venjulegu kerfisklukkunni og ganga eftir sínum eigin takti (áður gengu allar klukkur eftir sama takti og voru aðeins mismunandi í offset sinni).
    • Upphaflegur stuðningur við Proxy Execution hefur verið bætt við til að draga úr vandamálum með forgangsrof. Proxy Execution gerir verkefni sem bíður eftir að lás losni að flytja keyrslusamhengi sitt yfir í verkefnið sem geymir lásinn, sem flýtir fyrir losun lásins.
    • Áframhaldandi flutningur breytinga frá Rust-for-greininniLinux, sem tengist notkun Rust sem annars tungumáls fyrir þróun rekla og kjarnaeininga (Rust-stuðningur er ekki virkur sjálfgefið og leiðir ekki til þess að Rust er meðal nauðsynlegra kjarnauppbyggingarháða). Útdráttum hefur verið bætt við til að stjórna spennu- og straumstýringum, eiginleikum vélbúnaðar, I/O-auðlindum og I/O-minni. Makróið "warn_on!()" hefur verið útfært. UserPtr-gerðinni hefur verið bætt við fyrir notendarýmisvísa. Virkni workqueue, uaccess, dma, time og list-eininganna hefur verið stækkuð. 'Bits'-einingin hefur verið bætt við með 'bit' og 'genmask'-föllunum.
    • Kóðinn fyrir útreikning á CRC-prófsummum hefur verið endurhannaður og nýjum köllum til að búa til SHA-1 og SHA-2 ruðningsgildi hefur verið bætt við. Vélbúnaðarsértækar hagræðingar hafa verið bættar við. Afköst crc32c() fallsins hafa verið bætt á nýjum x86_64 örgjörvum sem styðja VPCLMULQDQ (Vector Carry-Less Multiplication of Quadwords) viðbótina.
    • Fyrir S390 kerfi hefur stuðningur við að skipta um og flytja stórar minnissíður (gagnsæ risasíða) verið innleiddur.
    • Bætt við möguleikanum á að stilla árásargirni endurheimtar minnissíðna (proactive-reclaim) fyrir tiltekna NUMA hnúta þegar minni er ekki nægt. Þetta gerir þér kleift að velja NUMA hnúta sem árásargjarnari minnisendurheimt verður beitt fyrir. Til dæmis, "echo "512M swappiness=10" > /sys/devices/system/node/node1/reclaim."
    • SCHED_EXT aðferðin, sem gerir kleift að nota BPF til að búa til örgjörvaáætlana, býður nú upp á möguleikann á að stjórna afköstum í gegnum cgroups. Til dæmis er hægt að nota cpu.max breytuna til að takmarka álag á örgjörva.
    • Sjálfvirk tenging sýndarskráarkerfisins tracefs við /sys/kernel/debug/tracing möppuna hefur verið úrelt; /sys/kernel/tracing ætti að vera notað í staðinn.
  • Sýndarvæðing og öryggi
    • Bætt við möguleikanum á að virkja vörn gegn veikleikum örgjörva með því að velja blokkeranlegar árásarvektorar Í stað þess að tilgreina tilteknar veikleikar í stillingunum. Blokkunaraðferðir eru valdar eftir tegund einangrunarbrots: milli notanda og kjarna (notandi-kjarni), milli notanda og annars notanda (notandi-notandi), milli gestakerfisins og gestgjafaumhverfisins (gestur-gestur), milli mismunandi gestakerfa (gestur-gestur) og milli mismunandi þráða (krossþráður). Sú aðferð sem lögð er til gerir aðeins kleift að virkja vörn gegn þeim veikleikaflokkum sem skipta notandanum raunverulega máli. Til dæmis geta eigendur skýjaumhverfis virkjað gest-gestgjafa og gest-gestur stillingar, sem munu virkja verndaraðferðir gegn eftirfarandi veikleikum: BHI, GD, L1TF, MDS, MMIO, Retbleed, RFDS, Spectre_v2, SRBDS, SRSO og TAA.
    • Bætt var við stuðningi við að smíða með Clang þýðandanum með því að nota dýptarmælingarham fyrir stafla, sem frumstillir allar breytur sem eru geymdar á staflanum. Þessi frumstilling kemur í veg fyrir leka kjarnaupplýsinga í gegnum ófrumstilltar breytur sem gætu innihaldið leifar af gögnum sem áður voru geymd á staflanum. Áður var svipaður eiginleiki studdur með STACKLEAK GCC viðbótinni.
    • Bætt við vörn gegn árásarmönnum sem falsa /proc skráakerfið með því að tengja í „bind“ ham. /proc rótar inode númerið er nú fast (PROCFS_ROOT_INO) og hægt er að staðfesta það með notendarýmisferli.
    • Undirkerfið RV (Runtime Verification), sem er hannað til að staðfesta rétta virkni mjög áreiðanlegra kerfa, hefur verið uppfært með eftirlitsþættinum rtapp (Real-time application monitor) til að rekja algeng vandamál í rauntímaforritum, sem og rp, sssw og opid íhlutum til að prófa verkefnaáætlunina. Möguleikinn á að búa til eftirlitsþætti sem nota línulega tímabundna rökfræði til að ákvarða hegðunarlíkanið í stað ákvarðandi sjálfvirkni hefur verið innleiddur. Staðfesting er framkvæmd á keyrslutíma með því að tengja meðhöndlunaraðila við rakningarpunkta, sem bera saman raunverulega keyrsluframvindu við fyrirfram skilgreint viðmiðunarlíkan sem skilgreinir væntanlega kerfishegðun.
    • AppArmor kerfið hefur verið uppfært til að styðja aðgangsstýringu fyrir AF_UNIX tengi.
    • KVM yfirsýnarinn á ARM kerfum útfærir stuðning fyrir GICv5 truflunarstýringuna.
    • Bætt við CONFIG_KVM_IOAPIC stillingu til að slökkva á stuðningi við APIC, PIC og PIT hermun í KVM.
    • Bætt við vörn gegn VMSCAPE veikleikanum.
    • Bætt var við ioctl skipuninni FS_IOC_GETLBMD_CAP til að fá upplýsingar úr notendarými um notkun á heilleikaverndartólum á skrá.
    • Notendaviðmótið /sys/fs/selinux/ hefur verið úrelt; aðgangur að því veldur nú fimm sekúndna töf og prentar viðvörun í skránni.
  • Net undirkerfi
    • Innleiðing PSE (Power Sourcing Equipment) tækni, sem notuð er til að útvega rafmagn yfir Ethernet til tækja eins og IP myndavéla og þráðlausra aðgangspunkta, hefur verið bætt með stuðningi við stillanlegar orkusparnaðaraðferðir (heildar tiltæk afl). Þessar aðferðir gera þér kleift að forgangsraða hvaða tengi á að loka til að koma í veg fyrir ofhleðslu.
    • MCTP (Management Component Transport Protocol) útfærslan styður nú leiðsögn með gáttum. Til dæmis leiða eftirfarandi reglur pakka til endapunkts-auðkennis 10 í gegnum tækið mctpi2c0 með því að nota vistfangið 0x1d, sem er beint úthlutað endapunkts-auðkenni 9. mctp route add 9 via mctpi2c0 mctp neigh add 9 dev mctpi2c0 lladdr 0x1d mctp route add 10 gw 9
    • Fyrir UNIX tengi (AF_UNIX) er SO_INC valkosturinn útfærður og fyrir VSOCK vistfangafjölskylduna er SIOCINQ valkosturinn útfærður. Þessir valkostir eru svipaðir og TCP_INQ valkosturinn fyrir TCP og leyfa að fá upplýsingar um fjölda bæta sem eru tiltækir til lestrar á tengilinn með stjórnskilaboðum.
    • TCP framfylgir nú stranglega auglýstri stærð móttökugluggans, sem ákvarðar magn gagna sem má senda áður en staðfesting á móttöku berst frá hinum endanum. Áður hélt kjarninn áfram að vinna úr gögnum sem bárust utan auglýsta móttökugluggans, en mun nú hætta því.
    • MPTCP (Multipath TCP) styður nú TCP_MAXSEG tengimöguleikann til að takmarka hámarksstærð sendra hluta. MPTCP er viðbót við TCP samskiptareglurnar til að afhenda pakka samtímis eftir mörgum leiðum í gegnum mismunandi netviðmót sem eru bundin við mismunandi IP-tölur.
    • Bætt var við stuðningi við TCP DualPI2 reiknirit fyrir umferðarstjórnun (RFC 9332), sem gerir kleift að nota stigstærðar umferðarstýringar fyrir umferð með miklar þjónustugæðakröfur (eins og TCP-Prag og DCTCP) án þess að valda afköstum fyrir hefðbundna umferð sem umferðarstýringar eins og Reno og Cubic meðhöndla.
    • Bætt var við sysctl "force_forwarding" sem hægt er að nota til að virkja umferðarframsendingu á völdum IPv6 netviðmótum.
    • Stuðningur við pakkatapgreiningarreikniritið Selective Acknowledgment (SACK) sem lýst er í RFC 6675 hefur verið fjarlægður. Þetta reiknirit var úrelt árið 2018. Mælt er með að nota RACK-TLP reikniritið til að greina pakkatap í TCP.
  • Оборудование
    • Vinna hefur haldið áfram við Xe DRM (Direct Rendering Manager) rekilinn fyrir skjákort sem byggir á Intel Xe arkitektúrnum, sem er notaður í Intel Arc seríunni skjákortum og samþættum grafíkkortum, byrjandi með Tiger Lake örgjörvum. Nýja útgáfan gerir kleift að styðja örgjörva sem byggja á Panthor Lake örarkitektúrnum sjálfgefið og bætir við stuðningi við WildCat Lake örarkitektúrinn.
    • AMDGPU reklarinn fyrir GFX9.x skjákort styður nú Cleaner Shader kerfið, sem hreinsar minni skjákortsins áður en það er endurnýtt til að koma í veg fyrir gagnaleka frá öðrum ferlum. Stuðningur við biðstöðu hefur verið bættur. Möguleikinn á að fara í biðstöðu í AMD SR-IOV umhverfum hefur verið bættur. Stýring á baklýsingu hefur verið bætt.
    • Rekillinn fyrir i915 styður nú drm_panic aðferðina, sem sýnir villuboð eins og „bláskjár dauðans“ þegar hrun á sér stað. Stuðningur við skjástýringuna sem notuð er í Wildcat Lake örgjörvunum hefur verið bætt við.
    • Samþætting Nova-reklaíhluta fyrir NVIDIA skjákort sem eru búin GSP vélbúnaði, sem var notaður frá og með NVIDIA GeForce RTX 2000 seríunni sem byggir á Turing örarkitektúr, hefur haldið áfram. Rekstrarforritið er skrifað í Rust. Nýja útgáfan bætir við abstraktlagi fyrir DMA, útfærir VBIOS-þáttara, bætir við kóða til að stilla rammabuffer og veitir stuðning við hraðaða hleðslu í Falcon-ham.
    • Adreno-reklarinn hefur verið uppfærður til að styðja Qualcomm Adreno x1-45 og x1-85 skjákort.
    • Msm-reklarinn styður nú Adreno SM8750 GPU og kortlagningu myndminnis (VM_BIND).
    • Panfrost-reklarinn hefur verið uppfærður til að styðja Mali GPU-einingar sem notaðar eru í Mediatek mt8370 SoC.
    • Lima-reklarinn hefur verið uppfærður til að styðja skjákort sem notuð eru í Rockchip RK3528 SoC.
    • Bætti við mtd (Memory Technology Devices) rekli fyrir aðgang að NVM minni sem er samþætt í Intel GPU-einingar.
    • Bætt hefur verið við stuðningi fyrir eftirfarandi hljóðkerfi: ASoC IMX WM8524, AMD ACP7.2, SoundWire ACP 7.1, Fairphone 4 og 5, Qualcomm QCS8275, Framework Laptop 13 (AMD Ryzen AI 300), CS35L41 HDA (notað í ASUS fartölvum), Richtek RTQ9124, TI TAS5753, HP EliteBook x360 830 G6, EliteBook 830 G6, LG 16Z90R-A, HP 15-fc000. HD hljóðkóði hefur verið endurskipulagður.
    • Bætt við stuðningi fyrir ARM spjöld, SoC-örgjörva og tæki: NVIDIA Tegra264, Marvell PXA1908 (fyrsta 64-bita örgjörvinn frá Marvell fyrir snjallsíma), CIX P1, Axiado AX3000, Sophgo SG2000 (sameinar ARM og RISC-V kjarna), Mediatek mt6572, exynos2200 (notað í Samsung Galaxy S22), Renesas R-Car V4M-7, TI am62d2 og Sophgo sg2042, fartölvur byggðar á Mediatek mt8186 og Qualcomm Snapdragon X1, snjallsímar og spjaldtölvur byggðar á mt6572, tegra30 og msm8976 SoC-örgjörvum.

Á sama tíma bjó Fríhugbúnaðarstofnun Rómönsku Ameríku til útgáfu af kjarna 6.17, sem er alveg ókeypis - Linux-libre 6.17-gnu, hreinsað af vélbúnaðar- og rekilþáttum sem innihalda ófrjálsa íhluti eða kóðahluta með takmarkað umfang. Útgáfa 6.17 inniheldur uppfærðan kóða fyrir hreinsun á blob-kerfum í reklunum amdgpu, prueth, iwlwifi, btusb, pci mhi host, adreno a6xx, nova-core og Intel AVS. Nöfn á blob-kerfum í devicetree (.dts) skrám fyrir ARM flísar og Intel IPU7 hafa verið hreinsuð. Hleðsla blob-kerfa hefur verið óvirk í nýju pci hda reklunum. Hreinsun blob-kerfa hefur verið hætt í QLogic infiniband reklinum, sem hefur verið fjarlægður úr kjarnanum.

Heimild: opennet.ru

Kauptu áreiðanlega hýsingu fyrir síður með DDoS vernd, VPS VDS netþjónum 🔥 Kauptu áreiðanlega vefhýsingu með DDoS vörn, VPS VDS netþjónum | ProHoster