Ukukhishwa kwe-kernel ye-Linux 5.17

Ngemuva kwezinyanga ezimbili zokuthuthuka, uLinus Torvalds wethule ukukhululwa kwe-Linux kernel 5.17. Phakathi kwezinguquko eziphawuleka kakhulu: uhlelo olusha lokuphatha ukusebenza kwamaphrosesa e-AMD, ikhono lokuphindaphinda ama-ID wabasebenzisi ezinhlelweni zamafayela, ukusekelwa kwezinhlelo eziphathwayo ze-BPF ezihlanganisiwe, ukuguqulwa kwejeneretha yenombolo engahleliwe iye ku-algorithm ye-BLAKE2s, insiza ye-RTLA. ukuze uthole ukuhlaziya kokusebenza kwesikhathi sangempela, isipele se-fscache esisha sezinhlelo zefayela lenethiwekhi yokulondoloza isikhashana, ikhono lokunamathisela amagama emisebenzini engaziwa ye-mmap.

Inguqulo entsha ihlanganisa ukulungiswa okungu-14203 okuvela kubathuthukisi abangu-1995, usayizi wesichibi ungu-37 MB (ushintsho luthinte amafayela angu-11366, imigqa yekhodi engu-506043 yengeziwe, imigqa engu-250954 isusiwe). Cishe u-44% wazo zonke izinguquko ezethulwe ku-5.17 zihlobene nezishayeli zedivayisi, cishe u-16% wezinguquko zihlobene nokubuyekeza ikhodi eqondene nezakhiwo zehadiwe, u-15% uhlobene nesitaki senethiwekhi, u-4% uhlobene nezinhlelo zamafayela, futhi u-4% zihlobene nesistimu ye-kernel yangaphakathi.

Ukuqamba okusha okubalulekile ku-kernel 5.17:

  • I-Disk Subsystem, I/O kanye ne-File Systems
    • Kusetshenziswe ithuba lokumepha okufakwe esidlekeni kwama-ID omsebenzisi wezinhlelo zamafayela akhweziwe, asetshenziselwa ukuqhathanisa amafayela omsebenzisi othile kungxenye yangaphandle egxunyekiwe nomunye umsebenzisi kusistimu yamanje. Isici esingeziwe sikuvumela ukuthi usebenzise ngokuphindaphindiwe imephu ngaphezulu kwezinhlelo zefayela lapho imephu isisetshenzisiwe kakade.
    • I-subsystem ye-fscache, esetshenziselwa ukuhlela ukugcinwa kunqolobane ohlelweni lwamafayela wendawo yedatha edluliswa ngamasistimu wamafayela enethiwekhi, ibhalwe kabusha ngokuphelele. Ukuqaliswa okusha kuhlukaniswa ukwenziwa lula okuphawulekayo kwekhodi kanye nokushintshwa kwemisebenzi eyinkimbinkimbi yokuhlela nokulandelela izinto ngezinqubo ezilula. Ukusekelwa kwe-fscache entsha kuqaliswa ohlelweni lwefayela le-CIFS.
    • Isistimu engaphansi yokulandelela umcimbi ku- fanotify FS isebenzisa uhlobo olusha lomcimbi, i-FAN_RENAME, ekuvumela ukuthi ubambe ngokushesha ukusebenza kokuqamba kabusha amafayela noma uhla lwemibhalo (ngaphambilini, izehlakalo ezimbili ezihlukene ezingu-FAN_MOVED_FROM kanye ne-FAN_MOVED_TO zisetshenziswe ukucubungula ukuqamba kabusha).
    • Isistimu yefayela ye-Btrfs ithuthukise ukugawulwa kwemithi nokusebenza kwe-fsync kuzinkomba ezinkulu, kwasetshenziswa ngokukopisha okhiye bezinkomba kuphela nokunciphisa inani lemethadatha efakiwe. Ukusekelwa kokukhomba nokusesha ngosayizi wamarekhodi esikhala samahhala kuhlinzekiwe, okunciphise ukubambezeleka cishe ngama-30% futhi kwanciphisa isikhathi sokusesha. Ivunyelwe ukuphazamisa imisebenzi yokuhlukaniswa. Ikhono lokwengeza amadivayisi lapho ukulinganisa phakathi kwamadrayivu kukhutshaziwe, i.e. lapho ukhweza isistimu yefayela ngenketho ye-skip_balance.
    • Kuhlongoziwe i-syntax entsha yokufaka uhlelo lwefayela le-Ceph, kuxazululwe izinkinga ezikhona ezihlobene nokubophezela kumakheli e-IP. Ngokungeziwe kumakheli e-IP, manje ungasebenzisa isihlonzi seqoqo (FSID) ukuze uhlonze iseva: mount -t ceph [i-imeyili ivikelwe]_name=/[subdir] mnt -o mon_addr=monip1[:port][/monip2[:port]]
    • Isistimu yefayela ye-Ext4 ithuthele ku-API entsha yokukhweza ehlukanisa izinketho zokukhweza nezinyathelo zokumisa i-superblock. Silahle usekelo lwezinketho zokukhweza ze-lazytime kanye ne-nolazytime, ezingezwe njengoshintsho lwesikhashana ukuze senze kube lula ukuguqulwa kwe-util-linux ukusebenzisa ifulegi le-MS_LAZYTIME. Usekelo olungeziwe lokusetha nokufunda amalebula ku-FS (ioctl FS_IOC_GETFSLABEL kanye ne-FS_IOC_SETFSLABEL).
    • I-NFSv4 yengeze ukwesekwa kokusebenza ezinhlelweni zefayela ezingazweli kumafayela namagama ohla lwemibhalo. I-NFSv4.1+ yengeza usekelo lokuchaza izikhathi ezihlanganisiwe (i-trunking).
  • Imemori kanye nezinsizakalo zesistimu
    • Kwengezwe umshayeli we-amd-pstate ukuze unikeze isilawuli sefrikhwensi esiguqukayo ukuze usebenze kahle. Umshayeli usekela ama-AMD CPU nama-APU aqala esizukulwaneni se-Zen 2, athuthukiswe ngokuhlanganyela neValve futhi kuhloswe ngawo ukuthuthukisa ukusebenza kahle kokuphathwa kwamandla. Ukuze ushintshe imvamisa eguquguqukayo, kusetshenziswa indlela ye-CPPC (Collaborative Processor Performance Control), ekuvumela ukuthi uguqule izinkomba ngokunembe kakhudlwana (hhayi kuphela kumaleveli amathathu okusebenza) futhi uphendule ngokushesha kakhulu ezinguqukweni zesimo kunesimo se-P esisekelwe ku-ACPI esisetshenziswe ngaphambilini. abashayeli (CPUFreq).
    • I-subsystem ye-eBPF inikezela ngesibambi se-bpf_loop(), esihlinzeka ngenye indlela yokuhlela ama-loops ezinhlelweni ze-eBPF, ngokushesha futhi kulula ukuqinisekiswa yisiqinisekisi.
    • Ezingeni le-kernel, kusetshenziswe indlela ye-CO-RE (Compile Once - Run Everywhere), ekuvumela ukuthi uhlanganise ikhodi yezinhlelo ze-eBPF kanye kuphela futhi usebenzise isilayishi esikhethekile esivumelanisa uhlelo olulayishiwe kuhlobo lwamanje lwe-kernel ne-BTF. (Ifomethi Yohlobo lwe-BPF).
    • Kuyenzeka unikeze amagama ezindaweni eziyimfihlo engaziwa (eyabelwe nge-malloc), engenza ukulungisa iphutha kube lula kanye nokwenza kahle kokusetshenziswa kwememori ezinhlelweni zokusebenza. Amagama anikezwa nge-prctl ngefulegi le-PR_SET_VMA_ANON_NAME futhi aboniswa kokuthi /proc/pid/maps kanye /proc/pid/smaps ngendlela "[anon: ]".
    • Isihleli somsebenzi sinikeza ukulandelela nokuboniswa ku-/proc/PID/sched isikhathi esichithwa yizinqubo esimweni sokungenzi lutho ngempoqo, esisetshenziswa, isibonelo, ukunciphisa umthwalo lapho iphrosesa ishisa ngokweqile.
    • Kungezwe imojuli ye-gpio-sim, edizayinelwe ukulingisa ama-GPIO chips ukuze ahlolwe.
    • Kwengezwe umyalo ongaphansi "wokubambezeleka" kumyalo we-"perf ftrace" ukuze kukhiqizwe ama-histograms ngolwazi lwe-latency.
    • Kwengezwe isethi yezinsiza ze-β€œRTLA” zokuhlaziya umsebenzi ngesikhathi sangempela. Kuhlanganisa izinsiza ezifana ne-osnoise (inquma umthelela wesistimu yokusebenza ekwenzeni umsebenzi) kanye ne-timerlat (ishintsha ukubambezeleka okuhlobene nesibali sikhathi).
    • Uchungechunge lwesibili lwamapheshana luhlanganiswe nokuqaliswa komqondo wamakhasi wekhasi, afana namakhasi ahlanganisiwe, kodwa abe ne-semantics ethuthukisiwe kanye nenhlangano ecacile yomsebenzi. Ukusebenzisa ama-tomes kukuvumela ukuthi usheshise ukuphathwa kwememori kwezinye i-kernel subsystems. Iziqephu ezihlongozwayo zaqeda ukuguqulwa kwenqolobane yekhasi ekusetshenzisweni kwama-tomes futhi zengeza ukusekelwa kokuqala kwama-tomes ohlelweni lwefayela le-XFS.
    • Kwengezwe imodi yokwakha ethi β€œmake mod2noconfig”, ekhiqiza ukucushwa okuqoqa wonke amasistimu angaphansi akhubazekile ngendlela yamamojula e-kernel.
    • Izimfuneko zenguqulo ye-LLVM/Clang engasetshenziswa ukwakha i-kernel ziphakanyisiwe. I-Build manje idinga okungenani ukukhishwa kwe-LLVM 11.
  • I-Virtualization kanye Nokuphepha
    • Ukuqaliswa okubuyekeziwe kwejeneretha yenombolo-mbumbulu ye-RDRAND, enesibopho sokusebenza kwedivayisi ye-/dev/okungahleliwe kanye ne-/dev/urandom, kuhlongoziwe, okuphawuleka ngoshintsho ekusebenziseni umsebenzi we-BLAKE2s hashi esikhundleni se-SHA1 ngemisebenzi yokuxuba i-entropy. Ushintsho luthuthukise ukuvikeleka kwejeneretha yenombolo-mbumbulu ngokususa i-algorithm eyinkinga ye-SHA1 futhi isuse ukubhala phezu kwevekhtha yokuqalisa ye-RNG. Njengoba i-algorithm ye-BLAKE2s iphakeme kune-SHA1 ekusebenzeni, ukusetshenziswa kwayo nakho kube nomthelela omuhle ekusebenzeni.
    • Ukuvikela okungeziwe ezingozini kumaphrosesa okubangelwa ukuqaliswa kokuqagela kwemiyalelo ngemva kwemisebenzi yokugxuma eya phambili engenamibandela. Inkinga yenzeka ngenxa yokucutshungulwa kwangaphambili kwemiyalelo ngokushesha kulandela imiyalelo yegatsha kumemori (SLS, Straight Line Speculation). Ukunika amandla ukuvikela kudinga ukwakha ngokukhishwa okuvivinyayo okwamanje kwe-GCC 12.
    • Kwengezwe indlela yokulandelela ukubalwa kwereferensi (i-refcount, ireferensi-count), okuhloswe ngayo ukunciphisa inani lamaphutha ekubalweni kwereferensi aholela ekufinyeleleni kumemori ngemva kokuba ikhululiwe. Indlela okwamanje ikhawulelwe kusistimu engaphansi yenethiwekhi, kodwa ngokuzayo ingashintshwa ibe kwezinye izingxenye ze-kernel.
    • Ukuhlola okunwetshiwe kokufakiwe okusha kuthebula lekhasi lememori yenqubo kuqalisiwe, okuvumela ukuthola izinhlobo ezithile zomonakalo nokumisa isistimu, kuvinjwe ukuhlasela kusenesikhathi.
    • Kwengezwe amandla okukhipha amamojula e-kernel ngokuqondile nge-kernel ngokwayo, futhi hhayi ngesibambi esikhaleni somsebenzisi, okuvumela ukusebenzisa imojuli ye-LoadPin LSM ukuqinisekisa ukuthi amamojula e-kernel alayishwa kumemori kusuka kudivayisi yokugcina eqinisekisiwe.
    • Ukuhlanganiswa okuhlinzekiwe ngefulegi elithi "-Wcast-function-type", elinika amandla izexwayiso mayelana nokusakaza izikhombi zokusebenza kuhlobo olungahambisani.
    • Kwengezwe umshayeli we-virtual host pvUSB ye-Xen hypervisor, enikeza ukufinyelela kumadivayisi e-USB adluliselwe kumasistimu wezihambeli (ivumela amasistimu wesivakashi ukuthi afinyelele kumadivayisi aphathekayo e-USB anikezwe isistimu yesivakashi).
    • Kwengezwe imojuli ekuvumela ukuthi uxhumane nge-Wi-Fi nesistimu engaphansi ye-IME (Intel Management Engine), efika ngamabhodi omama wesimanje amaningi anama-Intel processors futhi asetshenziswa njenge-microprocessor ehlukile esebenza ngaphandle kwe-CPU.
    • Ngokwakheka kwe-ARM64, usekelo lwenziwe lwethuluzi lokususa iphutha le-KCSAN (Kernel Concurrency Sanitizer), elidizayinelwe ukuhlonza izimo zomjaho ngaphakathi kwe-kernel.
    • Kuzinhlelo ze-ARM ezingama-32-bit, ikhono lokusebenzisa indlela ye-KFENCE ukuthola amaphutha lapho usebenza ngenkumbulo lengeziwe.
    • I-hypervisor ye-KVM yengeza ukusekelwa kwemiyalelo ye-AMX (Advanced Matrix Extensions) esetshenziswe kumaphrosesa azayo we-Intel Xeon Scalable server.
  • Isistimu engaphansi yenethiwekhi
    • Kungezwe usekelo lwemisebenzi yokulayisha ehlobene nokuphathwa kwethrafikhi ohlangothini lwamadivayisi enethiwekhi.
    • Kwengezwe amandla okusebenzisa i-MCTP (Iphrothokholi Yengxenye Yezokuphatha) phezu kwamadivayisi esiriyeli. I-MCTP ingasetshenziselwa ukuxhumana phakathi kwezilawuli zabaphathi namadivayisi azo ahlobene (amaphrosesa abamba, ama-peripherals, njll.).
    • Isitaki se-TCP sithuthukisiwe, isibonelo, ukuze kuthuthukiswe ukusebenza kwezingcingo ze-recvmsg, ukukhishwa okulibazisekayo kwamabhafa esokhethi sekuqalisiwe.
    • Ezingeni leziphathimandla ze-CAP_NET_RAW, ukusetha i-SO_PRIORITY kanye nezindlela ze-SO_MARK ngomsebenzi we-setsockopt kuvunyelwe.
    • Ku-IPv4, amasokhethi eluhlaza avunyelwe ukuthi aboshelwe kumakheli e-IP okungewona awendawo kusetshenziswa izinketho ze-IP_FREEBIND kanye ne-IP_TRANSPARENT.
    • Kwengezwe i-sysctl arp_missed_max ukuze kulungiselelwe inombolo yomkhawulo yokuhluleka ngesikhathi sokuhlolwa kwemonitha ye-ARP, ngemva kwalokho isixhumi esibonakalayo senethiwekhi sibekwa esimweni sokukhutshazwa.
    • Kunikezwe amandla okumisa i-sysctl min_pmtu ehlukene kanye namanani aphelelwa yisikhathi umuntu_ezikhala zamagama zenethiwekhi.
    • Kwengezwe ikhono lokusetha nokunquma usayizi wamabhafa wamaphakethe angenayo naphumayo ku-ethtool API.
    • I-Netfilter yengeze usekelo lokuhlunga ithrafikhi ye-pppoe yezokuthutha ebhulohweni lenethiwekhi.
    • Imojula ye-ksmbd, esebenzisa iseva yefayela isebenzisa iphrothokholi ye-SMB3, yengeze usekelo lokushintshisana ngokhiye, yenza imbobo yenethiwekhi engu-445 inikwe amandla i-smbdirect, futhi yengeze usekelo lwepharamitha ye-β€œsmb2 max credit”.
  • Izinsiza
    • Ukusekelwa kwezikrini zokubonisa ulwazi oluyimfihlo kwengezwe ohlelweni olungaphansi lwe-drm (Direct Rendering Manager) kanye nomshayeli we-i915, isibonelo, amanye ama-laptops afakwe izikrini ezinemodi yokubuka eyimfihlo eyakhelwe ngaphakathi, okwenza kube nzima ukubuka ngaphandle. . Izinguquko ezengeziwe zikuvumela ukuthi uxhume abashayeli abakhethekile bezikrini ezinjalo futhi ulawule izindlela zokuphequlula eziyimfihlo ngokusetha izakhiwo kumashayeli avamile e-KMS.
    • Umshayeli we-amdgpu uhlanganisa ukusekelwa kobuchwepheshe bokulungisa iphutha be-STB (Smart Trace Buffer) kuwo wonke ama-AMD GPU asekelayo. I-STB yenza kube lula ukuhlaziya ukwehluleka futhi ihlonze umthombo wezinkinga ngokugcina ulwazi olukhethekile lwe-buffer mayelana nemisebenzi eyenziwe ngaphambi kokwehluleka kokugcina.
    • Umshayeli we-i915 wengeza ukusekelwa kwama-chips e-Intel Raptor Lake S futhi anikeze amandla ukusekelwa kwesistimu engaphansi yezithombe zama-chips e-Intel Alder Lake P ngokuzenzakalela. Kungenzeka ukulawula ukukhanya kwesikrini ngokusebenzisa isixhumi esibonakalayo se-VESA DPCD.
    • Usekelo lokusheshisa kokuskrola kwehadiwe kukhonsoli kubuyisiwe kubashayeli be-fbcon/fbdev.
    • Ukuhlanganiswa okuqhubekayo kwezinguquko ukusekela ama-Apple M1 chips. Kusetshenziswe ikhono lokusebenzisa umshayeli we-simpledrm kumasistimu ane-chip ye-Apple M1 ukuze aphume ngefreyimu ehlinzekwa yi-firmware.
    • Ukusekelwa okungeziwe kwe-ARM SoΠ‘, amadivayisi namabhodi i-Snapdragon 7c, 845 kanye ne-888 (Sony Xperia XZ2 / XZ2C / XZ3, Xperia 1 III / 5 III, Samsung J5, Microsoft Surface Duo 2), Mediatek MT6589 (Fairphone FP1), Mediatek MT8183 ( I-Acer Chromebook 314), i-Mediatek MT7986a/b (isetshenziswa kumarutha e-Wi-fi), Broadcom BCM4908 (Netgear RAXE500), Qualcomm SDX65, Samsung Exynos7885, Renesas R-Car S4-8, TI J721s2, TIJ320s8, TIs8PP2500 SPEX2600, TI SPEX32, UMXP1 SPEX6 SPEX6000. , Aspeed AST6001/AST14, Engicam i.Core STM16MPXNUMX, Allwinner Tanix TXXNUMX, Facebook Bletchley BMC, Goramo MultiLink, JOZ Access Point, Y Soft IOTA Crux/Crux+, tXNUMX/tXNUMX MacBook Pro XNUMX/XNUMX
    • Usekelo olungeziwe lwamaphrosesa we-ARM Cortex-M55 kanye ne-Cortex-M33.
    • Ukwesekwa okungeziwe kwamadivayisi asekelwe ku-CPU MIP: I-Linksys WRT320N v1, i-Netgear R6300 v1, i-Netgear WN2500RP v1/v2.
    • Ukwesekwa okwengeziwe kwe-StarFive JH7100 SoC okusekelwe ekwakhiweni kwe-RISC-V.
    • Kwengezwe umshayeli we-lenovo-yogabook-wmi ukuze ulawule ukukhanya kwekhibhodi futhi ufinyelele izinzwa ezihlukahlukene ku-Lenovo Yoga Book.
    • Kwengezwe umshayeli we-asus_wmi_sensors ukuze afinyelele izinzwa ezisetshenziswa kumabhodi omama we-Asus X370, X470, B450, B550 kanye ne-X399 asekelwe kumaphrosesa we-AMD Ryzen.
    • Kwengezwe umshayeli we-x86-android-tablets wama-PC ethebulethi asuselwa ku-x86 ahanjiswe ngenkundla ye-Android.
    • Ukwesekwa okwengeziwe kwezikrini zokuthinta ze-TrekStor SurfTab duo W1 kanye nepeni le-electronic lamaphilisi e-Chuwi Hi10 Plus kanye ne-Pro.
    • Abashayeli be-SoC Tegra 20/30 bengeze ukusekelwa kwamandla nokuphathwa kwamandla kagesi. Inika amandla ukubhutha kumadivayisi amadala we-32-bit Tegra SoC afana ne-ASUS Prime TF201, Pad TF701T, Pad TF300T, Infinity TF700T, EeePad TF101 ne-Pad TF300TG.
    • Izishayeli ezingeziwe zamakhompiyutha ezimboni we-Siemens.
    • Ukwesekwa okungeziwe kwe-Sony Tulip Truly NT35521, Vivax TPC-9150, Innolux G070Y2-T02, BOE BF060Y8M-AJ0, JDI R63452, Novatek NT35950, Wanchanglong W552946ABA kanye ne-Team Source LCD Display043015CMXNUMX panel TSTXNUMXLCD
    • Ukwengezwa okungeziwe kwezinhlelo zomsindo nama-codec AMD Renoir ACP, Asahi Kasei Microdevices AKM4375, izinhlelo ze-Intel ezisebenzisa i-NAU8825/MAX98390, Mediatek MT8915, nVidia Tegra20 S/PDIF, Qualcomm ALC5682I-VS, Texas Instruments TLV320ADC. Izinkinga nge-Tegra3 HD-audio zixazululiwe. Kwengezwe ukwesekwa kwe-HDA kwamakhodekhi e-CS194L35. Ukusekelwa okuthuthukisiwe kwezinhlelo zomsindo zamalaptop e-Lenovo ne-HP, kanye namabhodi omama we-Gigabyte.

Source: opennet.ru

Engeza amazwana