Linux kernelaren bertsioa 5.17

Bi hilabeteko garapenaren ondoren, Linus Torvaldsek Linux kernel 5.17 oharra aurkeztu zuen. Aldaketa aipagarrienen artean: AMD prozesadoreentzako errendimendua kudeatzeko sistema berria, fitxategi-sistemetan erabiltzaile IDak modu errekurtsiboan mapatzeko gaitasuna, konpilatutako BPF programa eramangarrietarako laguntza, sasi-ausazko zenbaki-sorgailuaren trantsizioa BLAKE2s algoritmora, RTLA utilitate bat. denbora errealeko exekuzioa aztertzeko, sareko fitxategi-sistemen katxeatzeko fscache backend berri bat, mmap eragiketa anonimoei izenak eransteko gaitasuna.

Bertsio berriak 14203 garatzaileren 1995 konponketa biltzen ditu, adabakiaren tamaina 37 MBkoa da (aldaketek 11366 fitxategiri eragin zioten, 506043 kode lerro gehitu ziren, 250954 lerro ezabatu ziren). 44an sartutako aldaketa guztien % 5.17 inguru gailu kontrolatzaileei dagozkie, aldaketen % 16 gutxi gorabehera hardware-arkitekturaren berariazko kodea eguneratzeari dagozkio, % 15 sare-pilari dagokio, % 4 fitxategi-sistemei dagokie eta % 4. nukleo barneko azpisistemekin lotuta daude.

Berrikuntza nagusiak 5.17 nukleoan:

  • Disko azpisistema, I/O eta fitxategi sistemak
    • Muntatutako fitxategi-sistemen erabiltzaile IDen habiaratzeko aukera inplementatu da, muntatutako atzerriko partizio batean erabiltzaile jakin baten fitxategiak uneko sistemako beste erabiltzaile batekin konparatzeko erabiltzen dena. Gehitutako eginbideari esker, mapak errekurtsiboki erabiltzeko aukera ematen dizu jadanik mapak aplikatuta dauden fitxategi-sistemen gainean.
    • Sareko fitxategi-sistemen bidez transferitutako datuen fitxategi-sistema lokalean cachea antolatzeko erabiltzen den fscache azpisistema guztiz berridatzi da. Inplementazio berria kodearen sinplifikazio nabarmenagatik eta objektuen egoera planifikatzeko eta jarraitzeko eragiketa konplexuak mekanismo sinpleagoekin ordezkatzeagatik bereizten da. Fscache berriaren euskarria CIFS fitxategi-sisteman ezartzen da.
    • Fanotify FS-ko gertaeren jarraipenaren azpisistemak gertaera-mota berri bat inplementatzen du, FAN_RENAME, eta horrek fitxategiak edo direktorioen izenak aldatzeko eragiketa berehala atzemateko aukera ematen du (lehen, bi gertaera bereizi FAN_MOVED_FROM eta FAN_MOVED_TO erabiltzen ziren izenak prozesatzeko).
    • Btrfs fitxategi-sistemak erregistro eta fsync eragiketak optimizatu ditu direktorio handietarako, indize-gakoak soilik kopiatuz eta erregistratutako metadatu kopurua murriztuz. Espazio libreko erregistroen tamainaren arabera indexatzeko eta bilatzeko laguntza eman da, eta horrek latentzia gutxi gorabehera % 30 murriztu du eta bilaketa-denbora murriztu du. Desfragmentazio-eragiketak eteteko baimena. Diskoen arteko orekatzean gailuak gehitzeko gaitasuna desgaituta dago, hau da. skip_balance aukerarekin fitxategi-sistema bat muntatzean.
    • Ceph fitxategi-sistema muntatzeko sintaxi berri bat proposatu da, IP helbideekin lotzearekin lotutako arazoak konponduz. IP helbideez gain, orain cluster-identifikatzailea (FSID) erabil dezakezu zerbitzaria identifikatzeko: mount -t ceph [posta elektroniko bidez babestua]_izena=/[azpidir] mnt -o mon_addr=monip1[:port][/monip2[:port]]
    • Ext4 fitxategi-sistema muntatzeko API berri batera mugitu da, muntaketa-aukeren analisia eta superblokearen konfigurazio-urratsak bereizten dituena. Lazytime eta nolazytime muntaketa aukeretarako laguntza kendu dugu, util-linux-en MS_LAZYTIME bandera erabiltzeko trantsizioa errazteko aldi baterako aldaketa gisa gehitu ziren. FSn etiketak ezartzeko eta irakurtzeko laguntza gehitu da (ioctl FS_IOC_GETFSLABEL eta FS_IOC_SETFSLABEL).
    • NFSv4-k fitxategi- eta direktorio-izenetan maiuskulak eta minuskulak bereizten ez dituzten fitxategi-sistemetan lan egiteko laguntza gehitu du. NFSv4.1+ek saio agregatuak (trunking) definitzeko laguntza gehitzen du.
  • Memoria eta sistema zerbitzuak
    • Amd-pstate kontrolatzailea gehitu da maiztasun kontrol dinamikoa emateko errendimendu optimorako. Gidariak Zen 2 belaunalditik hasitako AMD CPUak eta APUak onartzen ditu, Valve-rekin batera garatuak eta energia-kudeaketako eraginkortasuna hobetzera zuzenduta dago. Maiztasun aldaketetarako, CPPC (Collaborative Processor Performance Control) mekanismoa erabiltzen da, zeinak adierazleak zehaztasun handiagoz alda ditzakezu (ez da hiru errendimendu-mailetara mugatuta) eta egoera aldaketei lehenago erabilitako ACPI-n oinarritutako P-egoera baino azkarrago erantzutea. kontrolatzaileak (CPUFreq).
    • eBPF azpisistemak bpf_loop() kudeatzailea eskaintzen du, eBPF programetan begiztak antolatzeko beste modu bat eskaintzen duena, egiaztatzaile batek egiaztatzeko azkarrago eta errazago.
    • Nukleo mailan, CO-RE (Compile Once - Run Everywhere) mekanismoa inplementatzen da, eBPF programen kodea behin bakarrik konpilatzeko eta kargatutako programa egungo nukleo eta BTF motetara egokitzen duen kargatzaile unibertsal berezi bat erabiltzeko aukera ematen duena. (BPF Mota formatua).
    • Memoria anonimo pribatuko (malloc bidez esleitutako) eremuei izenak esleitzea posible da, eta horrek aplikazioetan memoria-kontsumoaren arazketa eta optimizazioa erraztu dezake. Izenak prctl bidez esleitzen dira PR_SET_VMA_ANON_NAME banderarekin eta /proc/pid/maps eta /proc/pid/smaps-en bistaratzen dira "[anon: ]".
    • Zereginen programatzaileak /proc/PID/sched-en jarraipena eta bistaratzea eskaintzen du prozesuek behartutako inaktibo egoeran igarotako denbora, adibidez, prozesadorea gehiegi berotzen denean karga murrizteko erabiltzen dena.
    • Gpio-sim modulua gehitu da, probak egiteko GPIO txipak simulatzeko diseinatua.
    • "Perf ftrace" komandoari "latentzia" azpikomandoa gehitu zaio latentziari buruzko informazioa duten histogramak sortzeko.
    • "RTLA" utilitate multzo bat gehitu da lana denbora errealean aztertzeko. Osnoise (sistema eragileak zeregin baten exekuzioan duen eragina zehazten du) eta timerlat (tenporizadorearekin lotutako atzerapenak aldatzen ditu) bezalako utilitateak biltzen ditu.
    • Bigarren adabaki sorta bat orri-folioen kontzeptua inplementatzean integratu da, orrialde konposatuen antza dutenak, baina semantika hobetua eta lanaren antolaketa argiagoa dutenak. Tomak erabiltzeak memoria-kudeaketa bizkortzea ahalbidetzen du nukleoko azpisistema batzuetan. Proposatutako adabakiek orrialdeen cachearen bihurketa amaitu zuten tomeak erabiltzeko eta XFS fitxategi-sisteman tomeentzako hasierako euskarria gehitu zuten.
    • Gehitu da "make mod2noconfig" eraikitze modua, desgaitutako azpisistema guztiak kernel-modulu moduan biltzen dituen konfigurazioa sortzen duena.
    • Nukleoa eraikitzeko erabil daitekeen LLVM/Clang bertsioaren eskakizunak planteatu dira. Orain eraikitzeak gutxienez LLVM 11 bertsioa behar du.
  • Birtualizazioa eta segurtasuna
    • /dev/random eta /dev/urandom gailuen funtzionamenduaz arduratzen den RDRAND sasi-ausazko zenbaki-sorgailuaren inplementazio eguneratua proposatzen da, entropia nahasteko eragiketetarako BLAKE2s hash funtzioa SHA1-ren ordez erabiltzeko trantsizioan nabarmentzekoa. Aldaketak sasi-ausazko zenbaki-sorgailuaren segurtasuna hobetu zuen SHA1 algoritmo problematikoa ezabatuz eta RNG hasierako bektorearen gainidazketa ezabatuz. BLAKE2s algoritmoa errendimenduan SHA1 baino handiagoa denez, bere erabilerak ere eragin positiboa izan zuen errendimenduan.
    • Baldintzarik gabeko aurreranzko salto-eragiketen ondoren argibideen exekuzio espekulatiboak eragindako prozesadoreetako ahultasunen aurkako babesa gehitu da. Arazoa gertatzen da memorian adar-instrukzioa (SLS, Straight Line Speculation) jarraian berehala jarraian dauden instrukzioak prozesatzeari esker. Babesa gaitzeko, gaur egun GCC 12-ren probako bertsioarekin eraiki behar da.
    • Erreferentzia-zenbaketa jarraitzeko mekanismo bat gehitu da (erreferentzia-zenbaketa, erreferentzia-zenbaketa), memoriara askatu ondoren memoriara sartzea dakarren akatsen kopurua murrizteko helburua duena. Mekanismoa sarearen azpisistemara mugatuta dago gaur egun, baina etorkizunean nukleoaren beste ataletara egokitu daiteke.
    • Prozesuaren memoria orrien taulako sarrera berrien egiaztapen hedatuak ezarri dira, zenbait kalte mota detektatzeko eta sistema geldiarazteko aukera emanez, erasoak hasiera batean blokeatuz.
    • Nukleoaren moduluak zuzenean deskonprimitzeko gaitasuna gehitu da, eta ez erabiltzaile-espazioko kudeatzaile batek, eta horrek LoadPin LSM modulua erabiltzea ahalbidetzen du nukleoaren moduluak memorian kargatzen direla egiaztatutako biltegiratze-gailu batetik.
    • "-Wcast-funtzio-mota" marka duen muntaia ematen du, funtzio-erakusleak bateraezin den mota batera igortzeko abisuak ahalbidetzen dituena.
    • Ostalari birtualaren kontrolatzaile pvUSB gehitu da Xen hipervisorerako, sistema gonbidatuetara birbidaltzen diren USB gailuetarako sarbidea emanez (gonbidatuei sistema gonbidatuari esleitutako USB gailu fisikoetara sartzeko aukera ematen die).
    • Modulu bat gehitu da IME (Intel Management Engine) azpisistemarekin Wi-Fi bidez elkarreragiteko aukera ematen duena, Intel prozesadoredun plaka moderno gehienetan datorrena eta PUZaren independentean funtzionatzen duen mikroprozesadore bereizi gisa inplementatzen dena.
    • ARM64 arkitekturarako, KCSAN (Kernel Concurrency Sanitizer) arazketa tresnarako euskarria ezarri da, nukleoaren barruan lasterketa-baldintzak dinamikoki detektatzeko diseinatua.
    • 32 biteko ARM sistemetarako, memoriarekin lan egitean akatsak detektatzeko KFENCE mekanismoa erabiltzeko gaitasuna gehitu da.
    • KVM hipervisoreak datozen Intel Xeon Scalable zerbitzari prozesadoreetan inplementatutako AMX (Advanced Matrix Extensions) argibideetarako laguntza gehitzen du.
  • Sarearen azpisistema
    • Trafikoaren kudeaketarekin lotutako eragiketak deskargatzeko laguntza gehitu da sareko gailuen alboan.
    • MCTP (Management Component Transport Protocol) serieko gailuetan erabiltzeko gaitasuna gehitu da. MCTP kudeaketa-kontrolatzaileen eta haiei lotutako gailuen (ostalari-prozesadoreak, periferikoak, etab.) artean komunikatzeko erabil daiteke.
    • TCP pila optimizatu da, adibidez, recvmsg deien errendimendua hobetzeko, socket bufferen askapen atzeratua ezarri da.
    • CAP_NET_RAW autoritate mailan, SO_PRIORITY eta SO_MARK moduak setsockopt funtzioaren bidez ezartzea onartzen da.
    • IPv4rako, socket gordinak tokikoak ez diren IP helbideetara lotu daitezke IP_FREEBIND eta IP_TRANSPARENT aukerak erabiliz.
    • Sysctl arp_missed_max gehitu da ARP monitorearen egiaztapenean zehar hutsegiteen atalase-kopurua konfiguratzeko, eta horren ostean sareko interfazea desgaitu egoeran jartzen da.
    • Sysctl min_pmtu eta mtu_expires balio indibidualak sareko izen-espazioetarako konfiguratzeko gaitasuna eman du.
    • Sarrerako eta irteerako paketeen bufferen tamaina ezartzeko eta zehazteko gaitasuna gehitu zaio ethtool APIari.
    • Netfilter-ek sareko zubi batean garraio publikoko trafikoa iragazteko laguntza gehitu du.
    • SMB3 protokoloa erabiliz fitxategi-zerbitzari bat inplementatzen duen ksmbd moduluak gakoak trukatzeko laguntza gehitu du, 445 sareko ataka gaitu smbdirect-erako eta "smb2 max credit" parametrorako laguntza gehitu du.
  • ΠžΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅
    • Informazio konfidentziala bistaratzeko pantailetarako laguntza gehitu da drm (Direct Rendering Manager) azpisisteman eta i915 kontrolatzailean, adibidez, ordenagailu eramangarri batzuek isilpeko ikusteko modua duten pantailak dituzte, kanpotik ikustea zailduz. . Gehitutako aldaketei esker, horrelako pantailetarako kontrolatzaile espezializatuak konekta ditzakezu eta isilpeko arakatze moduak kontrola ditzakezu KMS ohiko kontrolatzaileetan propietateak ezarriz.
    • Amdgpu kontrolatzaileak STB (Smart Trace Buffer) arazketa-teknologia onartzen du onartzen duten AMD GPU guztientzat. STB-k hutsegiteak aztertzea eta arazoen iturria identifikatzea errazten du buffer berezi batean azken hutsegitearen aurretik egindako funtzioei buruzko informazioa gordez.
    • i915 kontrolatzaileak Intel Raptor Lake S txipetarako euskarria gehitzen du eta Intel Alder Lake P txipen azpisistema grafikorako laguntza gaitzen du lehenespenez. Pantailaren atzeko argia VESA DPCD interfazearen bidez kontrolatu daiteke.
    • Fbcon/fbdev kontrolatzaileetan kontsolan hardware korritze-azeleraziorako laguntza itzuli da.
    • Apple M1 txipak onartzen dituzten aldaketen integrazio jarraitua. Apple M1 txipa duten sistemetan simpledrm kontrolatzailea erabiltzeko gaitasuna inplementatu da firmwareak emandako framebuffer baten bidez irteteko.
    • ARM SoΠ‘, gailu eta plaketarako laguntza gehitu da Snapdragon 7c, 845 eta 888 (Sony Xperia XZ2 / XZ2C / XZ3, Xperia 1 III / 5 III, Samsung J5, Microsoft Surface Duo 2), Mediatek MT6589 (Fairphone FP1), Mediatek MT8183 Acer Chromebook 314), Mediatek MT7986a/b (Wi-fi bideratzaileetan erabiltzen da), Broadcom BCM4908 (Netgear RAXE500), Qualcomm SDX65, Samsung Exynos7885, Renesas R-Car S4-8, TI J721s2, TI SPEAr320s, NXLP8 i.MX , Aspeed AST8/AST2500, Engicam i.Core STM2600MP32, Allwinner Tanix TX1, Facebook Bletchley BMC, Goramo MultiLink, JOZ Access Point, Y Soft IOTA Crux/Crux+, t6/t6000 MacBook Pro 6001/14.
    • ARM Cortex-M55 eta Cortex-M33 prozesadoreetarako euskarria gehitu da.
    • CPU MIPSen oinarritutako gailuetarako euskarria gehitu da: Linksys WRT320N v1, Netgear R6300 v1, Netgear WN2500RP v1/v2.
    • RISC-V arkitekturan oinarritutako StarFive JH7100 SoCrako laguntza gehitu da.
    • Lenovo-yogabook-wmi kontrolatzailea gehitu da teklatuaren atzeko argia kontrolatzeko eta Lenovo Yoga Book-ko hainbat sentsore atzitzeko.
    • Asus_wmi_sensors kontrolatzailea gehitu da AMD Ryzen prozesadoreetan oinarritutako Asus X370, X470, B450, B550 eta X399 plaka nagusietan erabiltzen diren sentsoreetara sartzeko.
    • Android plataformarekin bidaltzen diren x86 oinarritutako tablet PCetarako x86-android-tableten kontrolatzailea gehitu da.
    • TrekStor SurfTab duo W1 ukipen-pantailetarako eta boligrafo elektronikorako laguntza gehitu da Chuwi Hi10 Plus eta Pro tabletetarako.
    • SoC Tegra 20/30-ren kontrolatzaileek potentzia eta tentsioaren kudeaketarako laguntza gehitu dute. 32 biteko Tegra SoC gailu zaharretan abiarazteko aukera ematen du, hala nola ASUS Prime TF201, Pad TF701T, Pad TF300T, Infinity TF700T, EeePad TF101 eta Pad TF300TG.
    • Siemens ordenagailu industrialetarako kontrolatzaileak gehitu dira.
    • Sony Tulip Truly NT35521, Vivax TPC-9150, Innolux G070Y2-T02, BOE BF060Y8M-AJ0, JDI R63452, Novatek NT35950, Wanchanglong W552946ABA eta Team Source Display TST043015 LCD paneletarako laguntza gehitu da.
    • Soinu sistemetarako eta kodeketarako euskarria gehitu da AMD Renoir ACP, Asahi Kasei Microdevices AKM4375, NAU8825/MAX98390 erabiltzen duten Intel sistemak, Mediatek MT8915, nVidia Tegra20 S/PDIF, Qualcomm ALC5682I-VS, Texas Instruments TLV320ADC3xxx. Tegra194 HD-audio-arekin arazoak konpondu dira. CS35L41 kodeketarako HDA ​​euskarria gehitu da. Lenovo eta HP ordenagailu eramangarrietarako soinu sistemen euskarria hobetu da, baita Gigabyte plaka nagusientzat ere.

Iturria: opennet.ru

Gehitu iruzkin berria