Linux 5.19 kjarnaútgáfa

Eftir tveggja mánaða þróun kynnti Linus Torvalds útgáfu Linux kjarna 5.19. Meðal athyglisverðustu breytinganna: Stuðningur við LoongArch örgjörva arkitektúr, samþættingu "BIG TCP" plástra, eftirspurnarstillingu í fscache, flutningur kóða til að styðja a.out sniðið, hæfileikinn til að nota ZSTD fyrir vélbúnaðarþjöppun, viðmót fyrir stjórna minnisflutningi úr notendarými, auka áreiðanleika og afköst gervi-handahófsnúmeraframleiðandans, stuðning fyrir Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) og ARM SME (Scalable Matrix Extension) viðbætur.

Í tilkynningunni sagði Linus að líklegast yrði næsta kjarnaútgáfa númer 6.0, þar sem 5.x útibúið hefur safnað nógu mörgum útgáfum til að breyta fyrsta númerinu í útgáfunúmerinu. Númerabreytingin er framkvæmd af fagurfræðilegum ástæðum og er formlegt skref sem léttir á vanlíðan vegna uppsöfnunar fjölda málaflokka.

Linus nefndi líka að hann notaði Apple fartölvu byggða á ARM64 arkitektúr (Apple Silicon) með Linux umhverfi byggt á Asahi Linux dreifingu til að búa til útgáfuna. Þetta er ekki aðal vinnustöð Linus, en hann notaði vettvanginn til að prófa hæfi hans fyrir kjarnavinnu og til að tryggja að hann gæti framleitt kjarnaútgáfur á ferðalagi með létta fartölvu við höndina. Áður, fyrir mörgum árum, hafði Linus reynslu af því að nota Apple búnað til þróunar - hann notaði einu sinni tölvu sem byggði á ppc970 CPU og Macbook Air fartölvu.

Nýja útgáfan inniheldur 16401 lagfæringar frá 2190 forriturum (í síðustu útgáfu voru 16206 lagfæringar frá 2127 forriturum), plástrastærðin er 90 MB (breytingarnar höfðu áhrif á 13847 skrár, 1149456 línur af kóða var bætt við, 349177 eytt). Um 39% allra breytinga sem kynntar eru í 5.19 tengjast tækjum, um það bil 21% breytinga tengjast uppfærslukóða sem er sértækur fyrir vélbúnaðararkitektúr, 11% tengjast netstafla, 4% tengjast skráarkerfum og 3% tengjast innri kjarna undirkerfum.

Helstu nýjungar í kjarna 5.19:

  • Diska undirkerfi, I/O og skráarkerfi
    • EROFS (Enhanced Read-Only File System) skráarkerfið, sem ætlað er til notkunar á skrifvarið skiptingum, hefur verið breytt til að nota fscache undirkerfið, sem veitir skyndiminni gagna. Breytingin bætti verulega afköst kerfa þar sem mikill fjöldi gáma er hleypt af stokkunum frá EROFS-byggðri mynd.
    • Lesham eftir kröfu hefur verið bætt við fscache undirkerfið, sem er notað til að fínstilla EROFS. Nýja stillingin gerir þér kleift að skipuleggja lestur skyndiminni frá FS myndum sem staðsettar eru í staðbundnu kerfinu. Öfugt við upphaflega tiltæka vinnslumátann, sem er lögð áhersla á að vista í skyndiminni í staðbundnu skráarkerfi gagna sem eru flutt í gegnum netskráarkerfi, úthlutar „eftirspurn“-hamurinn aðgerðir til að sækja gögn og skrifa þau í skyndiminni í sérstakan bakgrunnsferli í gangi í notendarými.
    • XFS veitir möguleika á að geyma milljarða útbreiddra eiginleika í i-hnút. Hámarksfjöldi umfangs fyrir eina skrá hefur verið aukinn úr 4 milljörðum í 247. Hátt hefur verið innleitt til að uppfæra nokkra útbreidda skráareiginleika í einu.
    • Btrfs skráarkerfið hefur fínstillt vinnu með læsingum, sem leyfði u.þ.b. 7% aukningu á afköstum þegar skrifað er beint í nowait ham. Afköst aðgerða í NOCOW ham (án afrita-í-skrifa) eykst um u.þ.b. 3%. Dregið hefur úr álagi á skyndiminni síðunnar þegar „senda“ skipunin er keyrð. Lágmarksstærð undirsíðna hefur verið lækkuð úr 64K í 4K (nota má undirsíður minni en kjarnasíður). Umskipti hafa verið gerð frá því að nota radix tré yfir í XArrays reikniritið.
    • Stillingu hefur verið bætt við NFS netþjóninn til að lengja varðveislu læsingarástandsins sem settur er af biðlara sem hefur hætt að svara beiðnum. Nýja stillingin gerir þér kleift að seinka láshreinsun í allt að einn dag nema annar viðskiptavinur biðji um samkeppnislás. Í venjulegri stillingu er lokunin hreinsuð 90 sekúndum eftir að viðskiptavinurinn hættir að svara.
    • Atburðarrakningar undirkerfið í fanotify FS útfærir FAN_MARK_EVICTABLE fánann, sem þú getur slökkt á því að festa mark i-hnúta í skyndiminni, til dæmis til að hunsa undirgreinar án þess að festa hluta þeirra í skyndiminni.
    • Rekla fyrir FAT32 skráarkerfið hefur bætt við stuðningi við að afla upplýsinga um stofnun skráar í gegnum statx kerfiskallið með innleiðingu á skilvirkari og virkari útgáfu af stat(), sem skilar víðtækum upplýsingum um skrána.
    • Umtalsverðar hagræðingar hafa verið gerðar á exFAT reklanum til að leyfa samtímis hreinsun á hópi geira þegar „dirsync“ hamurinn er virk, í stað þess að hreinsa raðgreinar eftir geira. Með því að fækka blokkbeiðnum eftir hagræðingu jókst árangur þess að búa til fjölda möppum á SD-kortinu um meira en 73-85%, allt eftir stærð klasans.
    • Kjarninn inniheldur fyrstu leiðréttingaruppfærsluna á ntfs3 bílstjóranum. Síðan ntfs3 var innifalið í 5.15 kjarnanum í október síðastliðnum hefur ekki verið uppfært að uppfæra ökumanninn og samskipti við þróunaraðila hafa rofnað, en þróunaraðilar hafa nú hafið útgáfubreytingar á ný. Fyrirhuguðu plástrarnir komu í veg fyrir villur sem leiddu til minnisleka og hruns, leystu vandamál með framkvæmd xfstests, hreinsuðu upp ónotaðan kóða og lagfærðu innsláttarvillur.
    • Fyrir OverlayFS hefur hæfileikinn til að kortleggja notendaauðkenni uppsettra skráakerfa verið innleidd, sem er notuð til að passa saman skrár tiltekins notanda á uppsettri erlendri skipting við annan notanda á núverandi kerfi.
  • Minni og kerfisþjónusta
    • Bætti við upphafsstuðningi fyrir LoongArch kennslusetta arkitektúrinn sem notaður er í Loongson 3 5000 örgjörvunum, sem útfærir nýja RISC ISA, svipað og MIPS og RISC-V. LoongArch arkitektúrinn er fáanlegur í þremur bragðtegundum: niðurdreginn 32-bita (LA32R), venjulegur 32-bita (LA32S) og 64-bita (LA64).
    • Kóði fjarlægður til að styðja a.out keyranlega skráarsniðið, sem var úrelt í útgáfu 5.1. A.out sniðið hefur lengi verið úrelt á Linux kerfum og gerð a.out skráa er ekki studd af nútíma tækjum í sjálfgefnum Linux stillingum. Hægt er að útfæra hleðslutæki fyrir a.out skrár alfarið í notendarými.
    • Stuðningur við x86 sértæka ræsivalkosti hefur verið hætt: nosp, nosmap, nosmep, noexec og noclflush).
    • Stuðningur við gamaldags CPU h8300 arkitektúr (Renesas H8/300), sem hefur lengi verið án stuðnings, hefur verið hætt.
    • Aukinn möguleiki sem tengist því að bregðast við greiningu á klofnum læsingum ("splitlæsingum") sem eiga sér stað þegar aðgangur er að ójöfnuðum gögnum í minni vegna þess að þegar frumeindafyrirmæli eru framkvæmd fara gögnin yfir tvær CPU skyndiminni línur. Slíkar hindranir leiða til verulegs lækkunar á frammistöðu. Ef áður, sjálfgefið, myndi kjarninn gefa út viðvörun með upplýsingum um ferlið sem olli lokuninni, nú mun erfiðara ferli hægja enn frekar á til að viðhalda afköstum restarinnar af kerfinu.
    • Bætti við stuðningi við IFS (In-Field Scan) vélbúnaðinn sem er útfærður í Intel örgjörvum, sem gerir þér kleift að keyra örgjörvagreiningarpróf á lágu stigi sem geta greint vandamál sem ekki finnast af stöðluðum verkfærum sem byggjast á villuleiðréttingarkóðum (ECC) eða jöfnunarbitum . Prófin sem gerðar eru eru í formi niðurhalanlegs fastbúnaðar, hannaður á svipaðan hátt og örkóðauppfærslur. Prófunarniðurstöður eru fáanlegar í gegnum sysfs.
    • Bætti við möguleikanum á að fella bootconfig skrá inn í kjarnann, sem gerir, auk skipanalínuvalkosta, kleift að ákvarða færibreytur kjarnans í gegnum stillingaskrá. Innfelling er framkvæmd með því að nota samsetningarvalkostinn 'CONFIG_BOOT_CONFIG_EMBED_FILE=»/PATH/TO/BOOTCONFIG/FILE»'. Áður var bootconfig ákvarðað með því að tengja við initrd myndina. Samþætting í kjarnanum gerir bootconfig kleift að nota í stillingum án initrd.
    • Möguleikinn á að hlaða niður fastbúnaði sem er þjappaður með Zstandard reikniritinu hefur verið innleiddur. Setti af stýriskrám /sys/class/firmware/* hefur verið bætt við sysfs, sem gerir þér kleift að hefja hleðslu fastbúnaðar úr notendarými.
    • io_uring ósamstillta I/O viðmótið býður upp á nýtt fána, IORING_RECVSEND_POLL_FIRST, sem, þegar það er stillt, mun fyrst senda netaðgerð til vinnslu með því að nota könnun, sem getur sparað auðlindir í aðstæðum þar sem vinnsla aðgerðarinnar með nokkurri töf er ásættanleg. io_uring bætti einnig við stuðningi við socket() kerfiskallið, lagði til nýja fána til að einfalda stjórnun skráarlýsinga, bætti við „multi-shot“ ham til að samþykkja nokkrar tengingar í einu í accept() símtalinu og bætti við aðgerðum til að framsenda NVMe skipanir beint í tækið.
    • Xtensa arkitektúrinn veitir stuðning við KCSAN (Kernel Concurrency Sanitizer) kembiforritið, hannað til að greina kappakstursaðstæður á virkum hætti innan kjarnans. Einnig bætt við stuðningi fyrir svefnstillingu og samvinnsluvélar.
    • Fyrir m68k arkitektúrinn (Motorola 68000) hefur sýndarvél (vettvangshermi) verið útfærð á Android Goldfish hermi.
    • Fyrir AArch64 arkitektúrinn hefur stuðningur við Armv9-A SME (Scalable Matrix Extension) viðbætur verið innleiddar.
    • eBPF undirkerfið gerir kleift að geyma vélritaða ábendingar í kortabyggingum og bætir einnig við stuðningi við kraftmikla vísa.
    • Lagt er til nýtt fyrirbyggjandi kerfi fyrir endurheimt minni sem styður stjórnun notendarýmis með því að nota memory.reclaim skrána. Að skrifa númer í tilgreinda skrá mun reyna að reka samsvarandi fjölda bæta úr settinu sem tengist cgroup.
    • Bætt nákvæmni minnisnotkunar þegar gögnum er þjappað í skiptingunni með zswap vélbúnaðinum.
    • Fyrir RISC-V arkitektúrinn er veittur stuðningur við að keyra 32 bita keyrslu á 64 bita kerfum, stillingu er bætt við til að binda takmarkandi eiginleika við minnissíður (til dæmis til að slökkva á skyndiminni) og kexec_file_load() aðgerðin er útfærð .
    • Innleiðing stuðnings fyrir 32-bita Armv4T og Armv5 kerfi er aðlöguð til notkunar í alhliða kjarnabyggingum sem henta fyrir mismunandi ARM kerfi.
  • Sýndarvæðing og öryggi
    • EFI undirkerfið útfærir getu til að flytja leyndarmál upplýsingar í trúnaðarmál til gestakerfa án þess að birta þær til gestgjafakerfisins. Gögnin eru veitt í gegnum security/coco skrána í securityfs.
    • Lokunarverndarstilling, sem takmarkar aðgang rótarnotenda að kjarnanum og lokar framhjáleiðum UEFI Secure Boot, hefur útrýmt glufu sem gerði kleift að komast framhjá vernd með því að vinna með kjarnakembiforritið.
    • Innifalið eru plástrar sem miða að því að bæta áreiðanleika og afköst gervi-handahófsnúmeragjafans.
    • Þegar byggt er með Clang 15 er stuðningur við vélbúnaðinn til að slemba kjarnabyggingar útfærður.
    • Landlock vélbúnaðurinn, sem gerir þér kleift að takmarka samspil hóps ferla við ytra umhverfið, veitir stuðning við reglur sem gera þér kleift að stjórna framkvæmd endurnefna skráa.
    • IMA (Integrity Measurement Architecture) undirkerfið, hannað til að sannreyna heilleika stýrikerfishluta með því að nota stafrænar undirskriftir og kjötkássa, hefur verið skipt yfir í að nota fs-verity eininguna fyrir skráarstaðfestingu.
    • Rökfræði aðgerða þegar slökkt er á réttindalausum aðgangi að eBPF undirkerfinu hefur verið breytt - áður voru allar skipanir tengdar bpf() kerfiskallinu óvirkar, og frá og með útgáfu 5.19 er aðgangur að skipunum sem leiða ekki til að búa til hluti eftir. . Þessi hegðun krefst forréttindaferlis til að hlaða BPF forriti, en þá geta óforréttindaferli haft samskipti við forritið.
    • Bætti við stuðningi við AMD SEV-SNP (Secure Nested Paging) viðbótina, sem veitir örugga vinnu með hreiðri minnissíðutöflum og verndar gegn „undeSERVed“ og „SEVerity“ árásum á AMD EPYC örgjörva, sem gerir kleift að komast framhjá AMD SEV (Secure Encrypted Virtualization) ) verndarkerfi.
    • Bætt við stuðningi við Intel TDX (Trusted Domain Extensions) vélbúnaðinn, sem gerir þér kleift að loka fyrir tilraunir þriðja aðila til að fá aðgang að dulkóðuðu minni sýndarvéla.
    • Virtio-blk bílstjórinn, notaður til að líkja eftir blokkartækjum, hefur bætt við stuðningi við I/O með því að nota skoðanakönnun, sem samkvæmt prófunum hefur dregið úr leynd um um 10%.
  • Net undirkerfi
    • Pakkinn inniheldur röð STÓRA TCP plástra sem gera þér kleift að auka hámarks pakkastærð TCP pakka í 4GB til að hámarka rekstur háhraða innri gagnavera netkerfa. Svipuð aukning á pakkastærð með 16 bita haussviðsstærð næst með því að útfæra „jumbo“ pakka, stærðin í IP hausnum er stillt á 0 og raunveruleg stærð er send í sérstakri 32 bita reit í sérstakri meðfylgjandi haus. Í frammistöðuprófun, með því að stilla pakkastærð á 185 KB, jókst afköst um 50% og dró verulega úr gagnaflutningstíðni.
    • Áfram var unnið að því að samþætta verkfæri í netstaflann til að fylgjast með ástæðum þess að pakka var sleppt (ástæðukóðar). Ástæðukóðinn er sendur þegar minnið sem tengist pakkanum losnar og gerir ráð fyrir aðstæðum eins og pakkakasti vegna villna í haus, rp_filter skopstælingar, ógildrar eftirlitssumma, úr minni, IPSec XFRM reglur ræstar, ógilt raðnúmer TCP o.s.frv.
    • Bætti við stuðningi við að falla til baka MPTCP (MultiPath TCP) tengingar til að nota venjulega TCP, í aðstæðum þar sem ekki er hægt að nota ákveðna MPTCP eiginleika. MPTCP er framlenging á TCP samskiptareglum til að skipuleggja rekstur TCP tengingar með afhendingu pakka samtímis eftir nokkrum leiðum í gegnum mismunandi netviðmót sem tengjast mismunandi IP tölum. Bætt við API til að stjórna MPTCP straumum frá notendarými.
  • Оборудование
    • Bætt við yfir 420 þúsund línum af kóða sem tengjast amdgpu reklum, þar af um 400 þúsund línur sem eru sjálfvirkar hausskrár fyrir ASIC skráargögn í AMD GPU reklanum, og aðrar 22.5 þúsund línur veita upphaflega útfærslu á stuðningi við AMD SoC21. Heildarstærð ökumanns fyrir AMD GPU fór yfir 4 milljónir kóðalína. Auk SoC21 inniheldur AMD ökumaðurinn stuðning fyrir SMU 13.x (System Management Unit), uppfærðan stuðning fyrir USB-C og GPUVM og undirbúning fyrir stuðning við næstu kynslóðir RDNA3 (RX 7000) og CDNA (AMD Instinct) palla .
    • i915 bílstjórinn (Intel) hefur aukna möguleika sem tengjast orkustjórnun. Bætt við auðkennum fyrir Intel DG2 (Arc Alchemist) GPU sem notaðar eru á fartölvum, veitti upphafsstuðning fyrir Intel Raptor Lake-P (RPL-P) vettvang, bætti við upplýsingum um Arctic Sound-M skjákort), innleitt ABI fyrir tölvuvélar, bætt við fyrir DG2 kort styðja fyrir Tile4 sniðið; fyrir kerfi byggð á Haswell örarkitektúr er DisplayPort HDR stuðningur útfærður.
    • Nouveau ökumaðurinn hefur skipt yfir í að nota drm_gem_plane_helper_prepare_fb meðhöndlunina; kyrrstöðu minnisúthlutun hefur verið beitt á sumar mannvirki og breytur. Hvað varðar notkun kjarnaeininga opinn uppspretta af NVIDIA í Nouveau, þá kemur vinnan hingað til niður á að bera kennsl á og útrýma villum. Í framtíðinni er áætlað að útgefinn fastbúnaður verði notaður til að bæta árangur ökumanns.
    • Bætti við reklum fyrir NVMe stjórnandi sem notaður er í Apple tölvum sem byggir á M1 flísinni.

Á sama tíma myndaði Latin American Free Software Foundation útgáfu af algerlega ókeypis kjarna 5.19 - Linux-libre 5.19-gnu, hreinsaður af hlutum fastbúnaðar og rekla sem innihalda ófrjálsa íhluti eða hluta af kóða, umfang þeirra er takmarkað af framleiðanda. Nýja útgáfan hreinsar upp reklana fyrir pureLiFi X/XL/XC og TI AMx3 Wkup-M3 IPC. Uppfærður blob-hreinsunarkóði í Silicon Labs WFX, AMD amdgpu, Qualcomm WCNSS Peripheral Image Loader, Realtek Bluetooth, Mellanox Spectrum, Marvell WiFi-Ex, Intel AVS, IFS, pu3-imgu rekla og undirkerfi. Vinnsla á Qualcomm AArch64 devicetree skrám hefur verið innleidd. Bætti við stuðningi við nýja nafnakerfi Sound Open Firmware íhluta. Hætti að þrífa ATM Ambassador bílstjórann sem var fjarlægður úr kjarnanum. Stjórnun blobhreinsunar í HDCP og Mellanox Core hefur verið færð í aðskilin kconfig merki.

Heimild: opennet.ru

Bæta við athugasemd