I-Linux kernel 5.14

I-Linux kernel 5.14

Emva kweenyanga ezimbini zophuhliso, uLinus Torvalds wazisiwe ukukhutshwa kwe-kernel Linux 5.14. Phakathi kwezona nguqu ziphawulekayo: i-quotactl_fd () entsha kunye ne-memfd_secret () iifowuni zenkqubo, ukususwa kwe-ide kunye nabaqhubi abaluhlaza, umlawuli omtsha we-I/O ophambili weqela, i-SCHED_CORE imodi yokucwangcisa umsebenzi, izibonelelo zokudala abalayishi beprogram ye-BPF eqinisekisiweyo.

Uguqulelo olutsha lubandakanya ukulungiswa kwe-15883 ukusuka kubaphuhlisi be-2002, ubukhulu be-patch yi-69 MB (utshintsho oluchaphazelekayo lweefayile ze-12580, i-861501 imigca yekhowudi yongezwa, i-321654 imigca yacinywa). Ngokumalunga ne-47% yazo zonke iinguqu ezifakwe kwi-5.14 zihambelana nabaqhubi besixhobo, malunga ne-14% yeenguqu zihambelana nokuhlaziya ikhowudi ethile kwi-architectures ye-hardware, i-13% inxulumene ne-stack networking stack, i-3% inxulumene neenkqubo zefayile, kunye ne-3% zinxulumene ne-kernel yangaphakathi yendlela esezantsi.

Siseko ezintsha:

  • inkqubo esezantsi yediski, igalelo/imveliso kunye neenkqubo zefayile:
    • yeqela iphunyeziwe umlawuli omtsha we-I/O ophambili - i-rq-qos, enokulawula ukubekwa phambili kwezicelo zokuvala izixhobo ezenziwe ngamalungu eqela ngalinye. Inkxaso entsha yolawulo oluphambili yongezwe kumq-umhla wokugqibela we-I/O umcwangcisi;
    • kwindlela yefayile ye ext4 iphunyeziwe Umyalelo omtsha we-ioctl EXT4_IOC_CHECKPOINT, enyanzelisa zonke iintengiselwano ezisalindileyo ukusuka kwilog kunye nezithinteli ezinxulumeneyo ukuya kwidiski, kwaye ibhala ngaphezulu indawo esetyenziswa lushicilelo kugcino. Utshintsho lwalungiswa njengenxalenye yenyathelo lokuthintela ukuvuza kolwazi kwiinkqubo zeefayile;
    • kwi-Btrfs yaziswa Ukulungiswa kokusebenza: Ngokususa ukugawulwa ngokungeyomfuneko kweempawu ezongeziweyo ngexesha lokwenziwa kwe-fsync, ukusebenza kwemisebenzi enzulu eneempawu ezongeziweyo kunyuke ukuya kuthi ga kwi-17%. Ukongezelela, xa usenza imisebenzi yokutrima engachaphazeli imilinganiselo, ulungelelwaniso olupheleleyo luvaliwe, olunciphisa ixesha lokusebenza nge-12%. Isicwangciso songeziwe kwii-sysfs ukunciphisa umda we-I/O xa ujonga iFS. Ukongezwa kweefowuni ze-ioctl ukurhoxisa uhlengahlengiso kunye nokucima ukusebenza kwesixhobo;
    • kwi-XFS iphinde yasebenza ukuphunyezwa kwe-cache ye-buffer, ekhutshelwa kunikezelo lwamaphepha ememori kwimo yebhetshi. Ukuphucula ukusebenza kakuhle kwe-cache;
    • I-F2FS yongeza inketho yokusebenza kwimodi yokufunda kuphela kwaye iphunyezwe imodi ye-caching block block (compress_cache) ukuphucula ukusebenza kokufunda okungahleliwe. Inkxaso iphunyeziwe ukucinezela iifayile ezifakwe kwinkumbulo kusetyenziswa umsebenzi we mmap (). Ukukhubaza ngokukhethiweyo ukucinezelwa kwefayile ngemaski, kucetyiswe ukhetho olutsha lokunyuswa kwe-nocompress;
    • umsebenzi wenziwe kumqhubi we-exFAT ukuphucula ukuhambelana nokugcinwa kwezinye iikhamera zedijithali;
    • umnxeba wongeza inkqubo quotactl_fd(), ekuvumela ukuba ulawule izabelo kungekuphela ngefayile yesixhobo esikhethekileyo, kodwa ngokukhankanya inkcazo yefayile edityaniswe nesixokelelwano sefayile apho umlinganiselo osetyenziswayo;
    • Abaqhubi abadala bezixhobo zebhloko ezinojongano lwe-IDE basusiwe kwi kernel, kudala betshintshwa yinkqubo esezantsi ye-libata. Inkxaso yezixhobo ezindala zigcinwe ngokupheleleyo, utshintsho luchaphazela kuphela amandla okusebenzisa abaqhubi abadala, xa usebenzisa ii-drives ezibizwa ngokuthi / dev / hd *, kwaye kungekhona / dev / sd *;
    • Umqhubi "oluhlaza" ususiwe kwi-kernel, enikezela ukufikelela okungathintekiyo kwizixhobo zebhlokhi nge-/dev/raw interface. Lo msebenzi kudala uphunyeziwe kwizicelo usebenzisa i O_DIRECT iflegi;
  • Iinkonzo zememori kunye nenkqubo:
    • indlela entsha yokucwangcisa iphunyeziwe kumcwangcisi womsebenzi SCHED_CORE, ekuvumela ukuba ulawule ukuba zeziphi iinkqubo ezinokusebenza kunye kundoqo we-CPU efanayo. Inkqubo nganye inokwabelwa isichongi secookie esichaza umda wokuthembana phakathi kweenkqubo (umzekelo, ezizezomsebenzisi omnye okanye isikhongozeli). Xa uququzelela ukuphunyezwa kwekhowudi, umcwangcisi unokuqinisekisa ukuba i-CPU enye ingundoqo yabelwana kuphela phakathi kweenkqubo ezinxulumene nomnini ofanayo, ezinokuthi zisetyenziswe ukuvala uhlaselo oluthile lwe-Specter ngokuthintela imisebenzi ethembekileyo nengenakuthenjwa ekusebenzeni kwintambo efanayo ye-SMT (Hyper Threading) ;
    • yenkqubo yeqela, inkxaso yomsebenzi wokubulala iphunyeziwe, ekuvumela ukuba ubulale zonke iinkqubo ezinxulumene neqela kanye (thumela i-SIGKILL) ngokubhala "1" kwifayile yenyani cgroup.kill;
    • amandla owandisiweyo anxulumene nokuphendula ekubhaqweni kokwahlula izitshixo ("i-split locks") eyenzeka xa ufikelela kwidatha engalungelelananga kwimemori ngenxa yokuba xa kusenziwa umyalelo weathom, idatha iwela imigca emibini ye-CPU cache. Ukuvimba okunjalo kukhokelela ekunciphiseni okukhulu ekusebenzeni, ngoko ngaphambili kwakunokwenzeka ukuphelisa ngamandla isicelo esibangele ukuvala. Ukukhutshwa okutsha kongeza iparamitha yomyalelo we-kernel β€œsplit_lock_detect=ratelimit:N”, ekuvumela ukuba uchaze umda wenkqubo-banzi kumyinge wemisebenzi yokutshixa ngomzuzwana, emva kokugqitha kuyo nayiphi na inkqubo ethe yaba ngumthombo wesitshixo sokwahlula. ukunyanzelwa ukuba umise i-20 ms endaweni yokuphelisa;
    • I-cgroup bandwidth controller CFS (i-CFS bandwidth isilawuli), emisela ukuba lingakanani ixesha leprosesa elinokwabelwa iqela ngalinye, linamandla okuchaza imida elinganiselweyo ngexesha elinikiweyo lesenzo, elivumela ukulawulwa okungcono kwemithwalo ye-latency-sensitive. Umzekelo, ukubeka i-cpu.cfs_quota_us ukuya kwi-50000 kunye ne-cpu.cfs_period_us ukuya kwi-100000 kuya kuvumela iqela leenkqubo ukuba lichithe i-100ms yexesha le-CPU rhoqo nge-50ms;
    • yongezwe izibonelelo zokuqala zokudala abalayishi beprogram ye-BPF, eya kuvumela ngakumbi ukukhutshelwa kuphela kweenkqubo ze-BPF ezisayinwe ngesitshixo esithembekileyo sedijithali;
    • yongeze umsebenzi omtsha we-futex FUTEX_LOCK_PI2, esebenzisa i-monotonic timer ukubala ixesha lokuphuma, elithatha ingqalelo ixesha elichithwe yinkqubo kwindlela yokulala;
    • yoyilo lweRISC-V, inkxaso yamaphepha enkumbulo amakhulu (Amaphepha aMakhulu aNgaphandle) kunye nokukwazi ukusebenzisa KFENCE ukuchonga iimpazamo xa usebenza ngememori;
    • kwi madvise () inkqubo yokufowuna, ebonelela ngeendlela zokwandisa inkqubo yolawulo lwenkumbulo, yongezwe MADV_POPULATE_READ kunye ne MADV_POPULATE_WRITE iiflegi ukuvelisa "impazamo yephepha" kuwo onke amaphepha enkumbulo enzelwe imisebenzi yokufunda okanye yokubhala, ngaphandle kokwenza ukufunda okanye ukubhala (okwangaphambili). Ukusetyenziswa kweeflegi kunokuba luncedo ekunciphiseni ukulibaziseka ekuqhutyweni kweprogram, ngenxa yokuphunyezwa ngokukhawuleza komphathi "wephepha" kuwo onke amaphepha angabiwanga kanye, ngaphandle kokulinda ukufikelela kwangempela kubo;
    • kwinkqubo yovavanyo lweyunithi kuni yongezwe inkxaso yokuqhuba iimvavanyo kwindawo ye-QEMU;
    • Abalandeli abatsha bongeziwe: "ingxolo" ukulandelela ulibaziseko lwesicelo olubangelwa kukuphathwa kophazamiseko, kunye ne " timerlat " ukubonisa ulwazi oluneenkcukacha malunga nolibaziseko xa uvuka kwisignali yesibali-xesha;
  • ukwenziwa kwezinto ezibonakalayo kunye nokhuseleko:
    • yongezwa inkqubo ifowuni memfd_secret(), ekuvumela ukuba wenze indawo yememori yangasese kwindawo yedilesi esecaleni, ebonakalayo kuphela kwinkqubo yomnini, engabonakali kwezinye iinkqubo kwaye ingafikeleleki ngokuthe ngqo kwi-kernel;
    • kwinkqubo ye-seccomp inkqubo yokucoca umnxeba, xa uhambisa izibambi zokutshixa kwindawo yomsebenzisi, kuyenzeka ukuba usebenzise umsebenzi omnye weathom ukwenza inkcazo yefayile yomsebenzi ozimeleyo kwaye uyibuyisele xa kusetyenzwa umnxeba wenkqubo. Umsebenzi ocetywayo uyasombulula ingxaki ngokuphazamiseka komphathi kwindawo yomsebenzisi xa umqondiso ufika;
    • yongezwa indlela entsha ukulawula unyino lwemithombo kwi-ID ye-ID yomsebenzisi, ebophelela izixhobo zokubala ze-rlimit zomntu ngamnye kumsebenzisi kwi-"user namespace". Utshintsho lusombulula ingxaki ngokusetyenziswa kwezinto zokubala eziqhelekileyo xa umsebenzisi omnye eqhuba iinkqubo kwizikhongozeli ezahlukeneyo;
    • i-hypervisor ye-KVM yeenkqubo ze-ARM64 yongeze ukukwazi ukusebenzisa i-MTE (MemTag, iMemory Tagging Extension) ulwandiso kwiinkqubo zeendwendwe, ezikuvumela ukuba ubophe iithegi kumsebenzi ngamnye wokwabiwa kwememori kwaye uququzelele ukujonga ukusetyenziswa okuchanekileyo kwezalathisi ukuvala ukuxhatshazwa. ubuthathaka obubangelwa kukufikelela kwiibhloko zememori esele zikhululwe, ii-buffers eziphuphumayo, ukufikelela phambi kokuqaliswa kunye nokusetyenziswa ngaphandle komxholo wangoku;
    • UQinisekiso lwesalathiso olubonelelwe liqonga le-ARM64 ngoku lingaqwalaselwa ngokwahlukileyo kwi-kernel kunye nesithuba somsebenzisi. Itekhnoloji ikuvumela ukuba usebenzise imiyalelo ekhethekileyo ye-ARM64 ukuqinisekisa iidilesi zokubuyisela usebenzisa utyikityo lwedijithali olugcinwe kumasuntswana angasentla angasetyenziswanga esalathisi ngokwaso;
    • kwimowudi yomsebenzisi Linux yongezwe inkxaso yokusetyenziswa kwabaqhubi bezixhobo ze-PCI ngebhasi ye-PCI ebonakalayo, ephunyezwe ngumqhubi we-PCI-over-virtio;
    • kwiinkqubo ze-x86, inkxaso eyongezelelweyo yesixhobo se-virtio-iommu paravirtualized, ekuvumela ukuba uthumele izicelo ze-IOMMU, ezifana ne-ATTACH, DETACH, MAP kunye ne-UNMAP, phezu kothutho lwe-virtio ngaphandle kokulinganisa iitafile zephepha lememori;
    • Kwii-Intel CPUs, ukusuka kwintsapho yaseSkylake ukuya kwiLake Lake, ukusetyenziswa kwe-Intel TSX (iTransactional Synchronization Extensions), ebonelela ngezixhobo zokuphucula ukusebenza kwezicelo ezinemisonto emininzi ngokususa ngamandla ungqamaniso olungeyomfuneko imisebenzi, ikhutshaziwe ngokungagqibekanga. Izandiso zivaliwe ngenxa yokuhlaselwa okunokwenzeka Zombieload, ukuxhaphaza ukuvuza kolwazi ngokusebenzisa iziteshi zomntu wesithathu ezenzeka ngexesha lokusebenza kwendlela yokuphazamiseka kwe-asynchronous of operations (TAA, TSX Asynchronous Abort);
  • Inkqubo esezantsi yenethiwekhi:
    • ukuhlanganiswa okuqhubekayo kumbindi we-MPTCP (i-MultiPath TCP), ukwandiswa kweprotocol ye-TCP yokuququzelela ukusebenza koxhulumaniso lwe-TCP kunye nokuhanjiswa kweepakethi ngaxeshanye ngeendlela ezininzi ngeendlela ezahlukeneyo zonxibelelwano oluhambelana needilesi ze-IP ezahlukeneyo. Kushicilelo olutsha yongezwa indlela yokuseta eyakho imigaqo-nkqubo ye-hashing yetrafikhi ye-IPv4 kunye ne-IPv6 (umgaqo-nkqubo we-hash yeendlela ezininzi), isenza kube nokwenzeka ukusuka kwisithuba somsebenzisi ukumisela ukuba yeyiphi imihlaba kwiipakethi, kubandakanywa ezigqunyiweyo, ezakusetyenziswa xa kubalwa i-hash emisela ukhetho lwendlela. kwipakethi;
    • inkxaso yesokhethi yongezwe kwi-virtio yothutho ebonakalayo SOCK_SEQPACKET (ukuhanjiswa ngokufanelekileyo nangokuthembekileyo kweedathagrams);
    • Ubunakho be-SO_REUSEPORT socket mechanism yandisiwe, evumela ukuba iisokethi ezininzi zokumamela ziqhagamshelane nezibuko elinye ngexesha elinye ukufumana unxibelelwano nokusasazwa kwezicelo ezingenayo ngaxeshanye kuzo zonke iisokethi eziqhagamshelwe nge-SO_REUSEPORT, eyenza lula ukuyilwa kwezicelo zeseva ezinemisonto emininzi. . Kwinguqulelo entsha yongezwe kuthetha ukudluliselwa kolawulo kwenye i-socket kwimeko yokungaphumeleli xa kusetyenzwa isicelo ngesokethi ekhethiweyo ekuqaleni (isombulula ingxaki ngokulahleka koqhagamshelwano lomntu ngamnye xa uqalisa kwakhona iinkonzo);
  • izixhobo:
    • kumqhubi we-amdgpu iphunyeziwe inkxaso kuluhlu olutsha lwe-AMD Radeon RX 6000 yee-GPU, ezinekhowudi ethi "Beige Goby" (Navi 24) kunye ne "Yellow Carp", kunye nenkxaso ephuculweyo ye-Aldebaran GPU (gfx90a) kunye neVan Gogh APU. Kongezwe isakhono sokusebenza ngaxeshanye neephaneli ezininzi ze-eDP. Kwi-APU Renoir, inkxaso yokusebenza ngee-encrypted buffers kwimemori yevidiyo (TMZ, Trusted Memory Zone) iphunyeziwe. Inkxaso eyongeziweyo yamakhadi emizobo eshushu-yokukhupha. I-Radeon RX 6000 (i-Navi 2x) ye-GPU kunye ne-AMD GPUs endala, inkxaso ye-ASPM (i-Active State Power Management) indlela yokugcina amandla ivuliwe ngokuzenzakalelayo, eyayinikwe amandla ngaphambili kuphela kwi-Navi 1x, i-Vega kunye ne-Polaris GPUs;
    • iichips AMD, inkxaso kwimemori ebonakalayo ekwabelwanayo (SVM, imemori ebonakalayo ekwabelwana ngayo) yongezwe ngokusekelwe kwi-HMM (i-Heterogeneous memory management) subsystem, evumela ukusetyenziswa kwezixhobo kunye neeyunithi zabo zokulawula imemori (MMU, iyunithi yokulawula imemori), enokufikelela kwimemori engundoqo. Kubandakanya ukusebenzisa i-HMM, unokuququzelela indawo yedilesi ekwabelwana ngayo phakathi kwe-GPU kunye ne-CPU, apho i-GPU inokufikelela kwimemori ephambili yenkqubo;
    • ukongeza inkxaso yetekhnoloji yokuqala AMD Smart Shift, etshintsha ngamandla iiparamitha zokusetyenziswa kwamandla e-CPU kunye ne-GPU kwiilaptops ezine-chipset kunye nekhadi lemizobo ye-AMD ukunyusa ukusebenza xa udlala, ukuhlelwa kwevidiyo kunye nokunikezelwa kwe-3D;
    • kumqhubi we-i915 wamakhadi evidiyo e-Intel ifakiwe inkxaso ye-Intel Alderlake P chips;
    • umqhubi we-drm/hyperv we-Hyper-V virtual graphics adapter;
    • yongezwa simpledrm umqhubi wegraphic osebenzisa i-EFI-GOP okanye i-VESA framebuffer enikezwe yi-UEFI firmware okanye i-BIOS yemveliso. Eyona njongo yomqhubi kukubonelela ngemveliso yeziphumo zesakhono ngexesha lamanqanaba okuqala esiqalo, phambi kokuba kusetyenziswe umqhubi opheleleyo we-DRM. Umqhubi usenokusetyenziswa njengesisombululo sexeshana kwisixhobo esingekabinabaqhubi bomthonyama be-DRM;
    • yongezwe zonke-in-enye inkxaso computer Raspberry Pi 400;
    • Kongezwe umqhubi we-dell-wmi-yabucala ukuxhasa ikhamera kunye neeswitshi ze-microphone hardware ezibandakanyiweyo kwiilaptops zikaDell;
    • yeelaptops zeLenovo yongezwa Ujongano lweWMI lokutshintsha iiparamitha zeBIOS ngokusebenzisa isysfs/sys/class/firmware-attributes/;
    • yandisiwe inkxaso yezixhobo ezinojongano lwe-USB4;
    • yongezwe inkxaso yamakhadi esandi kunye neekhowudi ze-AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 kunye neTexas Instruments TAS2505. Uphuculo lwenkxaso yomsindo kwi-HP kunye ne-ASUS laptops. Yongeziwe amabala okunciphisa ulibaziseko phambi kokuba iaudio iqale ukudlala kwizixhobo ezinojongano lwe-USB.

Umthombo - opennet.ru.

umthombo: linux.org.ru