Ukukhutshwa kwe-kernel ye-Linux 5.11

Emva kweenyanga ezimbini zophuhliso, uLinus Torvalds ubonise ukukhululwa kweLinux kernel 5.11. Phakathi kwezona nguqu ziphawulekayo: inkxaso ye-Intel SGX enclaves, indlela entsha yokuthintela iifowuni zenkqubo, ibhasi encedisayo ebonakalayo, ukuvalwa kokuhlanganisa iimodyuli ngaphandle kwe-MODULE_LICENSE (), imowudi yokucoca ngokukhawuleza kwiifowuni zenkqubo kwi-seccomp, ukupheliswa kwenkxaso ia64 i-architecture, ukudluliselwa kweteknoloji ye-WiMAX kwisebe "lokumisa", ukukwazi ukufaka i-SCTP kwi-UDP.

Inguqulelo entsha ibandakanya ukulungiswa kwe-15480 ukusuka kubaphuhlisi be-1991, ubungakanani be-patch yi-72 MB (utshintsho oluchaphazelekayo lweefayile ze-12090, i-868025 imigca yekhowudi yongezwa, imigca ye-261456 isusiwe). Ngokumalunga ne-46% yazo zonke iinguqu ezifakwe kwi-5.11 zihambelana nabaqhubi besixhobo, malunga ne-16% yeenguqu zihambelana nokuhlaziya ikhowudi ethile kwi-architectures ye-hardware, i-13% inxulumene ne-stack yenethiwekhi, i-3% inxulumene neenkqubo zefayile, kunye ne-4% zinxulumene ne-kernel yangaphakathi yendlela esezantsi.

Iinguqulelo eziphambili:

  • Inkqubo engaphantsi kweDisk, I/O kunye neeNkqubo zeFayile
    • Iinketho ezininzi zokunyuka zongezwa kwi-Btrfs ukuze zisetyenziswe xa ubuyisela idatha kwinkqubo yefayile eyonakalisiweyo: "i-rescue=ignorebadroots" yokunyuka, nangona umonakalo kwimithi ethile yeengcambu (ubungakanani, i-uuid, i-data reloc, idivayisi, i-csum, indawo yamahhala), " rescue=gnoredatacsums” ukuvala ukujonga i-checksum yedatha kunye "rescue=all" ukuze kwangaxeshanye uvule 'ignorebadroots', 'ignoredatacssums' kunye ne'nologreplay' iindlela. I-"inode_cache" ukhetho lokunyusa, obelurhoxisiwe ngaphambili, luyekisiwe. Ikhowudi ilungiselelwe ukuphumeza inkxaso yeebhloko ezineedatha kunye nedatha encinci kunobukhulu bephepha (PAGE_SIZE), kunye nenkxaso yendlela yokwabiwa kwendawo. Izicelo ezingenabuffered (Direct IO) ziye zasiwa kwiziseko ezingundoqo ze-iomap. Ukusebenza kwenani lemisebenzi kuphuculwe; kwezinye iimeko, ukukhawuleza kunokufikelela kumashumi eepesenti.
    • I-XFS isebenzisa iflegi ethi "needsrepair", ebonisa imfuneko yokulungiswa. Xa le flegi icwangciswa, inkqubo yefayile ayinakunyuswa ide iflegi ibekwe ngokutsha nge xfs_repair into eluncedo.
    • I-Ext4 ibonelela kuphela ngolungiso lwe-bug kunye nokulungiswa, kunye nokucoca ikhowudi.
    • Ukuthunyelwa kumazwe angaphandle kwakhona kweenkqubo zefayile exhonywe ngaphezulu kwe-NFS kuvumelekile (o.k.t. isahlulelo esinyuswe nge-NFS ngoku singathunyelwa ngaphandle nge-NFS kwaye sisetyenziswe njenge-cache ephakathi).
    • I-close_range () umnxeba wenkqubo, ovumela inkqubo ukuvala lonke uluhlu lweenkcazelo zefayile evulekileyo kanye, yongeze i-CLOSE_RANGE_CLOEXEC ukhetho lokuvala izichazi kwimowudi ye-close-on-exec.
    • Inkqubo yefayile ye-F2FS yongeza iifowuni ezintsha ze-ioctl () ukuvumela ulawulo lwesithuba somsebenzisi phezu kweefayile ezigcinwe kwifom ecinezelweyo. Yongezwe "compress_mode=" nyuka ukhetho lokukhetha ukuba ubeke isibambi socinezelo kwicala le kernel okanye kwindawo yomsebenzisi.
    • Kubonelelwe ngesakhono sokunyusa ii-Overlayfs ngeenkqubo ezingakhethi cala usebenzisa isithuba samagama somsebenzisi esahlukileyo. Ukuqinisekisa ukuthotyelwa kwemodeli yokhuseleko, uphicotho olupheleleyo lwekhowudi lwenziwa. Ii-Overlayfs zongeza amandla okuqhuba usebenzisa iikopi zemifanekiso yesixokelelwano sefayile ngokukhetha ukukhubaza ujongo lwe-UUID.
    • Inkqubo yefayile ye-Ceph yongeze inkxaso ye-protocol ye-msgr2.1, evumela ukusetyenziswa kwe-algorithm ye-AES-GCM xa uhambisa idatha kwifom efihliweyo.
    • Imodyuli ye-dm-multipath isebenzisa ukukwazi ukuthatha ingqalelo kwi-CPU affinity ("IO affinity") xa ukhetha indlela yezicelo ze-I/O.
  • Iinkonzo zememori kunye nenkqubo
    • Indlela entsha yokuthintela ukufowuna yongeziwe yongeziwe, ngokusekwe kwi prctl (), ekuvumela ukuba uvelise ngaphandle kwisithuba somsebenzisi xa ufikelela kumnxeba othile wenkqubo kwaye ulinganise ukwenziwa kwayo. Lo msebenzi uyafuneka kwiWayini kunye neProton ukulinganisa iifowuni zeWindows, okuyimfuneko ukuze kuqinisekiswe ukuhambelana nemidlalo kunye neenkqubo ezenza ngokuthe ngqo iifowuni zenkqubo ngokudlula iWindows API (umzekelo, ukukhusela ukusetyenziswa okungagunyaziswanga).
    • I-userfaultfd () inkqubo yokufowuna, eyilelwe ukujongana neziphene zephepha (ufikelelo kumaphepha eenkumbulo ezingabiwanga) kwindawo yomsebenzisi, ngoku iyakwazi ukukhubaza ukuphatha okwahlukileyo okwenzeka kwinqanaba le-kernel ukwenza kube nzima ukuxhaphaza ubuthathaka obuthile.
    • I-subsystem ye-BPF yongeze inkxaso yokugcinwa kwemisebenzi yendawo, ebonelela ngokubophelela kwedatha kumphathi othile we-BPF.
    • I-accounting yokusetyenziswa kwememori yinkqubo ye-BPF ihlaziywe ngokutsha - umlawuli weqela liye lacetywa endaweni ye-memlock rlimit yokulawula ukusetyenziswa kwememori kwizinto ze-BPF.
    • I-BTF (i-BPF Type Format) indlela, ebonelela ngolwazi lokukhangela uhlobo kwi-BPF pseudocode, inika inkxaso kwiimodyuli ze-kernel.
    • Inkxaso eyongeziweyo yokuvala (), renameat2 () kunye ne-unlinkat () iminxeba yenkqubo kwi-io_uring ujongano lwe-asynchronous I/O. Xa ufowunela io_uring_enter(), ukukwazi ukukhankanya ixesha lokuphuma kongeziwe (ungajonga inkxaso yempikiswano ukukhankanya ixesha lokuphuma usebenzisa i-IORING_FEAT_EXT_ARG iflegi).
    • Uyilo lwe-ia64 olusetyenziswa kwi-Intel Itanium processors lufuduselwe kwicandelo leenkedama, okuthetha ukuba uvavanyo luphelile. I-Hewlett Packard Enterprise iyekile ukwamkela iiodolo zezixhobo ezitsha ze-Itanium, kwaye i-Intel yenza njalo kunyaka ophelileyo.
    • Inkxaso yeenkqubo ezisekelwe kwi-MicroBlaze ye-architecture engabandakanyi iyunithi yokulawula imemori (MMU) iyekile. Iinkqubo ezinjalo azizange zibonwe kubomi bemihla ngemihla ixesha elide.
    • Kwi-architecture ye-MIPS, inkxaso yovavanyo lokugubungela ikhowudi yongezwe ngokusebenzisa i-gcov eluncedo.
    • Inkxaso eyongeziweyo yebhasi ye-axiliary ye-virtual yokudibanisa kunye nezixhobo ze-multifunction ezidibanisa ukusebenza okudinga abaqhubi abahlukeneyo (umzekelo, amakhadi womnatha ane-Ethernet kunye ne-RDMA inkxaso). Ibhasi ingasetyenziselwa ukwabela umqhubi weprayimari kunye nowesibini kwisixhobo, kwiimeko apho ukusetyenziswa kwe-MFD (Izixhobo zokusebenza ezininzi) kuyingxaki.
    • Kulwakhiwo lwe-RISC-V, inkxaso yongezwe kwi-CMA (i-Contiguous Memory Allocator) inkqubo yolwabiwo lwememori, elungiselelwe ukwabiwa kweendawo ezinkulu zeememori ezidibeneyo kusetyenziswa iindlela zokushukuma zekhasi lememori. Kwi-RISC-V, izixhobo zikwaphunyezwa ukunciphisa ukufikelela kwi-/dev/mem kwaye kuthathelwe ingqalelo ixesha lokuphazamiseka kokusebenza.
    • Kwiinkqubo ze-ARM ze-32-bit, inkxaso yongezwe kwi-KASan (idilesi ye-Kernel sanitizer) isixhobo sokulungisa iimpazamo, esinceda ukuchonga iimpazamo xa usebenza ngememori. Kwi-ARM ye-64-bit, ukuphunyezwa kwe-KASan kuguqulwe ukusebenzisa i-MTE tags (MemTag).
    • I-epoll_pwait2() umnxeba wenkqubo eyongeziweyo ukuvumela ukuphelelwa kwexesha ngokuchaneka kwe-nanosecond (i-epoll_wait call manipulates milliseconds).
    • Inkqubo yokwakha ngoku ibonisa impazamo xa izama ukwakha iimodyuli zekernel ezinokulayishwa apho ilayisenisi yekhowudi ingachazwanga kusetyenziswa iMODULE_LICENSE () macro. Ukusukela ngoku ukuya phambili, ukusebenzisa i-EXPORT_SYMBOL () macro kwimisebenzi engatshintshiyo kuya kubangela imposiso yokwakha.
    • Inkxaso eyongeziweyo yokwenza imephu yezinto ze-GEM ezivela kwimemori esetyenziselwa i-I/O, eyenze ukuba kube nokwenzeka ukukhawulezisa umsebenzi kunye nesakhelo sesakhelo kwezinye izakhiwo.
    • I-Kconfig iye yalahla inkxaso ye-Qt4 (ngelixa igcina inkxaso ye-Qt5, i-GTK kunye ne-Ncurses).
  • Ukwenziwa kweVirtual kunye noKhuseleko
    • Inkxaso yendlela yempendulo ekhawulezayo yongezwe kwi-seccomp () inkqubo yokufowuna, ekuvumela ukuba uqonde ngokukhawuleza ukuba umnxeba othile wenkqubo uvumelekile okanye awuvumelekanga ngokusekwe kwi-bitmap engatshintshiyo edityaniswe kwinkqubo, engadingi kuqhuba. umphathi weBPF.
    • Amacandelo adityanisiweyo e-kernel ekudaleni nasekulawuleni i-enclaves esekwe kwitekhnoloji ye-Intel SGX (i-Software Guard eXtensions), evumela izicelo ukuba zenze ikhowudi kwiindawo ezifihlakeleyo zememori, apho yonke inkqubo inokufikelela okulinganiselweyo.
    • Njengenxalenye yenyathelo lokunciphisa ukufikelela kwisithuba somsebenzisi ukuya kwi-MSR (irejista yemodeli ethile), ukubhala kwirejista ye-MSR_IA32_ENERGY_PERF_BIAS, ekuvumela ukuba utshintshe imowudi yokuphumelela kwamandla eprosesa ("eqhelekileyo", "ukusebenza", "ukugcina amandla") , akuvumelekanga.
    • Ukukwazi ukukhubaza ukufuduka kwemisebenzi ephambili ephezulu phakathi kwe-CPU isusiwe kwisebe le-kernel-rt kwiinkqubo zexesha langempela.
    • Kwiinkqubo ze-ARM64, ukukwazi ukusebenzisa iithegi ze-MTE (i-MemTag, iMemory Tagging Extension) kwiidilesi zememori yomphathi womqondiso wongeziwe. Ukusetyenziswa kwe-MTE kwenziwe ngokukhankanya i-SA_EXPOSE_TAGBITS ukhetho kwi-sigaction() kwaye ikuvumela ukuba ujonge ukusetyenziswa okuchanekileyo kwezalathisi ukuvala ukusetyenziswa kobuthathaka obubangelwa kukufikelela kwiibhloko zememori esele zikhululwe, ukuphuphuma kwebuffer, ukufikelela phambi kokuqalisa, kunye nokusetyenziswa ngaphandle kwe umxholo wangoku.
    • Yongeza i-"DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING" iparamitha, evumela inkqubo ephantsi ye-dm-verrity ukujonga utyikityo lwe-hash lwezatifikethi ezibekwe kutshixo lwesibini. Ngokwenza, ukuseta kukuvumela ukuba uqinisekise kuphela izatifikethi ezakhiwe kwi-kernel, kodwa kunye nezatifikethi ezilayishwe ngexesha lokusebenza, okwenza kube lula ukuhlaziya izatifikethi ngaphandle kokuhlaziya yonke i-kernel.
    • Imowudi yomsebenzisi i-Linux yongeze inkxaso yemowudi yokumisa-ukuya-engasebenziyo, ekuvumela ukuba ukhenkceze okusingqongileyo kwaye usebenzise uphawu lwe-SIGUSR1 ukuvuka kwimodi yokulala.
    • Umatshini we-virtio-mem, okuvumela ukuba utshise iplagi kwaye ukhuphe imemori kumatshini obonakalayo, yongeze inkxaso ye-Big Block Mode (BBM), eyenza kube lula ukudlulisa okanye ukuthatha imemori kwiibhloko ezinkulu kunobukhulu bememori ye-kernel. ibhlokhi, eyimfuneko yokwandisa i-VFIO kwi-QEMU.
    • Inkxaso ye-CHACHA20-POLY1305 cipher yongezwe kwi-kernel ukuphunyezwa kwe-TLS.
  • Inkqubo engaphantsi yothungelwano
    • I-802.1Q (VLAN), indlela yokulawula ukungaphumeleli koqhagamshelwano (i-CFM, i-Fault Management Fault Management) iphunyeziwe, ekuvumela ukuba uchonge, uqinisekise kwaye uhlukanise ukungaphumeleli kuthungelwano kunye neebhuloho ezibonakalayo (IiNethiwekhi eziNqubileyo eziBridged). Umzekelo, i-CFM ingasetyenziselwa ukwahlula iingxaki kuthungelwano oluthatha imibutho emininzi ezimeleyo abaqeshwa abanokufikelela kwizixhobo zabo kuphela.
    • Inkxaso eyongeziweyo yokufaka iipakethi zeprotocol ze-SCTP kwiipakethi ze-UDP (RFC 6951), ekuvumela ukuba usebenzise i-SCTP kuthungelwano kunye nabaguquleli bedilesi abadala abangaxhasi ngokuthe ngqo i-SCTP, kunye nokuphumeza i-SCTP kwiinkqubo ezingaboneleli ngqo kwi-IP. umaleko.
    • Ukuphunyezwa kweteknoloji ye-WiMAX ihanjiswe kwisiteji kwaye imiselwe ukususwa kwixesha elizayo ukuba akukho basebenzisi abafuna i-WiMAX. I-WiMAX ayisasetyenziswa kwiinethiwekhi zoluntu, kwaye kwi-kernel kuphela umqhubi apho i-WiMAX inokusetyenziswa ngumqhubi we-Intel 2400m wakudala. Inkxaso ye-WiMAX yayekwa kwi-NetworkManager network configurator kwi-2015. Okwangoku, i-WiMax iphantse yathatyathelwa indawo yitekhnoloji efana ne-LTE, HSPA+ kunye ne-Wi-Fi 802.11n.
    • Umsebenzi uye wenziwa ukulungiselela ukusebenza kakuhle kwe-traffic TCP engenayo kwimodi ye-zerocopy, okt. ngaphandle kokukhuphela okongeziweyo kwizithinteli ezintsha. Kwitrafikhi yobungakanani obuphakathi, ukugquma amashumi okanye amakhulu aliqela eekhilobhayithi zedatha, ukusebenzisa iqanda endaweni ye-recvmsg() kuyasebenza kakhulu. Ngokomzekelo, utshintsho oluphunyeziweyo lwenze ukuba kube lula ukwandisa ukusebenza kwe-RPC-style traffic kunye nemiyalezo ye-32 KB xa usebenzisa i-zerocopy nge-60-70%.
    • Yongezwe iminxeba entsha ye-ioctl () ukwenza iibhlorho zothungelwano ezithatha iikhonkco ezininzi zePPP. Ikhono elicetywayo livumela izakhelo ukuba zihambe ukusuka kwelinye itshaneli ukuya kwelinye, umzekelo ukusuka kwiPPPoE ukuya kwiseshoni yePPPoL2TP.
    • Ukudityaniswa kumbindi we-MPTCP (i-MultiPath TCP), ukwandiswa kweprotocol ye-TCP yokuququzelela ukusebenza koqhagamshelo lwe-TCP kunye nokuhanjiswa kweepakethi ngaxeshanye kwiindlela ezininzi ngeendlela ezahlukeneyo zonxibelelwano lwenethiwekhi ezinxulumene needilesi ezahlukeneyo ze-IP. Ukukhutshwa okutsha kwazisa inkxaso ye-ADD_ADDR ukhetho lokuthengisa iidilesi ze-IP ezikhoyo ezinokuqhagamshelwa xa ukongeza ukuhamba okutsha kuqhagamshelwano olukhoyo lwe-MPTCP.
    • Kongezwe ukukwazi ukuqwalasela izenzo xa uhlahlo lwabiwo-mali lokuvota lugqithisiwe (u-busy-polling). Imowudi ekhoyo ye-SO_BUSY_POLL ibithetha ukutshintshela kwi-softirq xa uhlahlo lwabiwo-mali luphelile. Kwizicelo ezifuna ukuqhubeka nokusebenzisa uvoto, kucetywa ukhetho olutsha SO_PREFER_BUSY_POLL.
    • I-IPv6 isebenzisa inkxaso ye-SRv6 End.DT4 kunye neendlela ze-End.DT6, ezisetyenziselwa ukudala abasebenzisi abaninzi be-IPv4 L3 VPNs kunye ne-VRF (i-Virtual umzila kunye nokuthunyelwa) izixhobo.
    • I-Netfilter idibanise ukuphunyezwa kweentetho ezicwangcisiweyo, eyenze ukuba kwenzeke ukukhankanya iintetho ezininzi zelungu ngalinye loluhlu olucwangcisiweyo.
    • Ii-APIs zongezwe kwi-802.11 stack ye-wireless ukuqwalasela imida yamandla e-SAR, kunye ne-AE PWE kunye ne-HE MCS iparameters. Umqhubi we-Intel iwlwifi wongeze inkxaso yoluhlu lwe-6GHz (Ultra High Band). Umqhubi we-Qualcomm Ath11k wongeze inkxaso ye-FILS (i-Fast Initial Link Setup, esemgangathweni njenge-IEEE 802.11ai) iteknoloji, ekuvumela ukuba ulahle ukulibaziseka okujikelezayo ngexesha lokufuduka ukusuka kwindawo yokufikelela kwelinye ukuya kwelinye.
  • Izixhobo
    • Umqhubi we-amdgpu unikezela ngenkxaso ye-AMD "Green Sardine" APU (Ryzen 5000) kunye ne "Dimgrey Cavefish" GPU (Navi 2), kunye nenkxaso yokuqala ye-AMD Van Gogh APU kunye ne-Zen 2 core kunye ne-RDNA 2 GPU (Navi 2). Inkxaso eyongeziweyo yezazisi ezintsha zeRenoir APU (esekelwe kwiZen 2 CPU kunye neVega GPU).
    • Umqhubi we-i915 wamakhadi evidiyo e-Intel uxhasa iteknoloji ye-IS (i-Integer scaling) ngokuphunyezwa kwesihluzi sokwandisa umlinganiselo kuthathelwa ingqalelo imo yeepikseli ezingabamelwane (i-interpolation ekufutshane-yommelwane) ukumisela umbala weepikseli ezilahlekileyo. Inkxaso yamakhadi e-Intel DG1 adityanisiweyo yandisiwe. Inkxaso yeteknoloji ye "Big Joiner" iphunyeziwe, ekhoyo ukususela kwi-Ice Lake / i-Gen11 chips kwaye ivumela ukusetyenziswa kwe-transcoder enye ukucubungula imilambo emibini, umzekelo, ukukhutshwa kwesikrini se-8K nge-DisplayPort enye. Yongezwe imowudi yokutshintsha ngokuhambelanayo phakathi kweebufa ezimbini kwimemori yevidiyo (i-async flip).
    • Umqhubi we-nouveau wongeze inkxaso yokuqala ye-NVIDIA GPUs esekwe kwi-Ampere microarchitecture (GA100, GeForce RTX 30xx), ukuza kuthi ga ngoku ilinganiselwe kwizixhobo zokulawula iindlela zevidiyo.
    • Inkxaso eyongeziweyo yeprotocol ye-3WIRE esetyenziswa kwiiphaneli zeLCD. Inkxaso eyongeziweyo ye-novatek nt36672a, TDO tl070wsh30, Innolux N125HCE-GN1 kunye neepaneli ze-ABT Y030XX067A 3.0. Ngokwahlukileyo, sinokuqaphela inkxaso yephaneli ye-OnePlus 6 kunye ne-6T ye-smartphones, eyenza kube lula ukulungelelanisa ukulayishwa kwe-kernel engaguqukiyo kwizixhobo.
    • Inkxaso eyongeziweyo yomlawuli wokuqala we-Intel we-USB4, iMaple Ridge.
    • Inkxaso eyongeziweyo ye-Allwinner H6 I2S, i-Analog Devices ADAU1372, i-Intel Alderlake-S, i-GMediatek MT8192, i-NXP i.MX HDMI kunye ne-XCVR, i-Realtek RT715 kunye ne-Qualcomm SM8250 codecs yomsindo.
    • Inkxaso eyongeziweyo yeebhodi ze-ARM, izixhobo kunye namaqonga: iGalaxy Note 10.1, iMicrosoft Lumia 950 XL, iNanoPi R1, iFriendlyArm ZeroPi, i-Elimo Initium SBC, iBroadcom BCM4908, iMediatek MT8192/MT6779/MT8167, MStar Infinity2M 730M382M98M3236M, Arm 750, Arm 8 Nuvo, 64 Nuvo30 IMikrotik isekwe kwiMarvell Prestera XNUMXDXXNUMX, iiseva ezineNuvoton NPCMXNUMX BMC, Kontron i.MXXNUMXM Mini, Espressobin Ultra, β€œTrogdor” Chromebook, Kobol HeliosXNUMX, Engicam PXXNUMX.Core.
    • Inkxaso eyakhelwe-ngaphakathi ye-console ye-Ouya yokudlala esekwe kwi-NVIDIA Tegra 3.

Kwangelo xesha, iLatin American Free Software Foundation yenze inguqulelo ye-5.11 kernel yasimahla - Linux-libre 5.11-gnu, ecinyiweyo kwizinto ze-firmware kunye nabaqhubi abaqulathe amacandelo angasimahla okanye amacandelo ekhowudi, umda wawo ulinganiselwe. ngumvelisi. Ukukhutshwa okutsha kucoca abaqhubi beqat_4xxx (crypto), lt9611uxcm (dsi / hdmi bridge), ccs/smia ++ (sensor), ath11k_pci, nxp transceiver yomsindo kunye nomlawuli we-mhi pci. Ikhowudi yokucoca i-blob ehlaziyiweyo kubaqhubi kunye ne-subsystems amdgpu, btqca, btrtl, btsb, i915 csr. Kukhubaziwe iiblobhu ezintsha kwi-m3 rproc, idt82p33 ppt iwotshi kunye ne-qualcomm arm64.

umthombo: opennet.ru

Yongeza izimvo