Linux kernel 5.14

Linux kernel 5.14

Às deidh dà mhìos de leasachadh, Linus Torvalds toirt a-steach sgaoileadh kernel Linux 5.14. Am measg nan atharrachaidhean as ainmeil: quotactl_fd () ùr agus memfd_secret () gairmean siostam, toirt air falbh draibhearan ide agus amh, rianadair prìomhachais I / O ùr airson cgroup, modh clàraidh gnìomh SCHED_CORE, bun-structar airson luchdan prògram BPF dearbhte a chruthachadh.

Tha an dreach ùr a’ toirt a-steach rèiteachaidhean 15883 bho luchd-leasachaidh 2002, is e meud paiste 69 MB (thug na h-atharrachaidhean buaidh air faidhlichean 12580, chaidh 861501 loidhnichean de chòd a chur ris, chaidh loidhnichean 321654 a dhubhadh às). Tha timcheall air 47% de na h-atharrachaidhean uile a chaidh a thoirt a-steach ann an 5.14 co-cheangailte ri draibhearan inneal, tha timcheall air 14% de na h-atharrachaidhean co-cheangailte ri ùrachadh còd a tha sònraichte do ailtireachd bathar-cruaidh, tha 13% co-cheangailte ris a’ chruach lìonraidh, tha 3% co-cheangailte ri siostaman faidhle, agus 3% co-cheangailte ri fo-shiostaman kernel a-staigh.

prìomh innleachdan:

  • fo-shiostam diosc, siostaman cuir a-steach / toraidh agus faidhle:
    • airson cgroup air a chur an gnìomh rianadair prìomhachais I / O ùr - rq-qos, as urrainn smachd a chumail air prìomhachas giollachd iarrtasan gus casg a chuir air innealan a thig bho bhuill gach cgroup. Chaidh taic rianadair prìomhachais ùr a chur ris a’ chlàr-ama mq-ceann-latha I/O;
    • air siostam faidhle ext4 air a chur an gnìomh òrdugh ioctl ùr EXT4_IOC_CHECKPOINT, a bheir air a h-uile gnothach a tha ri thighinn bhon log agus bufairean co-cheangailte ris gu diosc, agus cuideachd a’ sgrìobhadh thairis air an raon a chleachdas an logadh a-steach. Chaidh an t-atharrachadh ullachadh mar phàirt de dh’ iomairt gus casg a chuir air aodion fiosrachaidh bho shiostaman faidhle;
    • ann am Btrfs steach Optimizations dèanadais: Le bhith a’ cur às do logadh neo-riatanach de bhuadhan leudaichte rè coileanadh fsync, chaidh coileanadh gnìomhachd dian le buadhan leudaichte suas ri 17%. A bharrachd air an sin, nuair a bhios tu a’ coileanadh obair trim nach toir buaidh air ìrean, tha làn shioncronachadh à comas, a lughdaich an ùine obrachaidh 12%. Chaidh suidheachadh a chuir ri sysfs gus leud-bann I/O a chuingealachadh nuair a thathar a’ sgrùdadh an FS. Chaidh fiosan ioctl a chuir ris gus stad a chuir air ath-mheudachadh agus cuir às do ghnìomhachd inneal;
    • ann an XFS ath-obraich buileachadh tasgadan bufair, a thèid a ghluasad gu riarachadh dhuilleagan cuimhne ann am modh baidse. Èifeachdas cache nas fheàrr;
    • Chuir F2FS roghainn ris a bhith ag obair ann am modh leughaidh a-mhàin agus chuir e an gnìomh modh caching bloc teann (compress_cache) gus coileanadh leughaidh air thuaiream a leasachadh. Chaidh taic a chuir an gnìomh airson faidhlichean a tha air am mapadh gu cuimhne a dhlùthadh a’ cleachdadh an obair mmap(). Gus teannachadh faidhle le masg a chuir dheth gu roghnach, chaidh roghainn mount ùr nocompress a mholadh;
    • chaidh obair a dhèanamh anns an draibhear exFAT gus co-chòrdalachd le stòradh cuid de chamarathan didseatach a leasachadh;
    • gairm siostam a bharrachd quotactl_fd(), a leigeas leat cuotathan a riaghladh chan ann tro fhaidhle inneal sònraichte, ach le bhith a’ sònrachadh tuairisgeul faidhle co-cheangailte ris an t-siostam faidhle airson a bheil an cuota air a chuir an sàs;
    • Chaidh seann dhraibhearan airson innealan bloca leis an eadar-aghaidh IDE a thoirt air falbh bhon kernel; tha fo-shiostam libata air a bhith nan àite o chionn fhada. Chaidh taic airson seann innealan a ghleidheadh ​​​​gu h-iomlan, chan eil na h-atharrachaidhean a’ buntainn ach ri comas seann dhraibhearan a chleachdadh, nuair a bha iad a’ cleachdadh ris an canar / dev / hd *, agus chan e / dev / sd *;
    • Chaidh an draibhear “amh” a thoirt air falbh bhon kernel, a’ toirt cothrom gun bhacadh air innealan bloca tron ​​​​eadar-aghaidh / dev / raw. Chaidh an gnìomh seo a chur an gnìomh o chionn fhada ann am prògraman a' cleachdadh a' bhratach O_DIRECT;
  • seirbheisean cuimhne agus siostam:
    • chaidh modh clàraidh ùr a chuir an gnìomh anns a’ chlàr ghnìomhan SCHED_CORE, a leigeas leat smachd a chumail air na pròiseasan as urrainn ruith còmhla air an aon chridhe CPU. Faodar aithnichear briosgaid a thoirt do gach pròiseas a mhìnicheas farsaingeachd earbsa eadar pròiseasan (mar eisimpleir, a bhuineas don aon neach-cleachdaidh no soitheach). Nuair a bhios e ag eagrachadh coileanadh còd, faodaidh an clàr-ama dèanamh cinnteach gu bheil aon chridhe CPU air a roinn a-mhàin am measg phròiseasan co-cheangailte ris an aon neach-seilbh, a dh'fhaodar a chleachdadh gus casg a chuir air cuid de dh’ ionnsaighean Specter le bhith a’ cur casg air gnìomhan earbsach is neo-earbsach bho bhith a’ ruith air an aon snàithlean SMT (Hyper Threading). ;
    • airson an uidheamachd cgroup, chaidh taic airson an obair marbhadh a chuir an gnìomh, a leigeas leat a h-uile pròiseas co-cheangailte ris a’ bhuidheann a mharbhadh aig an aon àm (cuir SIGKILL) le bhith a’ sgrìobhadh “1” chun fhaidhle brìgheil cgroup.kill;
    • comasan leudaichte co-cheangailte ri bhith a’ freagairt ri lorg glasan sgoltadh (“glasan roinnte”) a thachras nuair a gheibhear cothrom air dàta neo-ainmichte mar chuimhneachan air sgàth gu bheil an dàta a’ dol thairis air dà loidhne tasgadan CPU nuair a thathar a’ cur an gnìomh stiùireadh atamach. Tha an leithid de bhacadh a’ leantainn gu lùghdachadh mòr ann an coileanadh, agus mar sin roimhe seo bha e comasach crìoch a chuir air an tagradh a dh’ adhbhraich am bacadh. Bidh an sgaoileadh ùr a’ cur ris a’ pharamadair loidhne-àithne kernel “split_lock_detect=ratelimit: N”, a leigeas leat crìoch air feadh an t-siostaim a mhìneachadh air ìre gnìomhachd glasaidh gach diog, às deidh sin a dhol thairis air a’ phròiseas sam bith a thàinig gu bhith na thùs de ghlas sgoltadh. toirt ort stad airson 20 ms an àite a bhith a’ crìochnachadh;
    • Tha comas aig rianadair leud-bann cgroup CFS (smachdadair leud-bann CFS), a bhios a’ dearbhadh dè an ùine pròiseasar a dh’ fhaodar a thoirt do gach cgroup, crìochan a mhìneachadh cuibhrichte le ùine gnìomh sònraichte, a leigeas le riaghladh nas fheàrr air luchdan mothachail air latency. Mar eisimpleir, le bhith a’ suidheachadh cpu.cfs_quota_us gu 50000 agus cpu.cfs_period_us gu 100000 leigidh sin do bhuidheann de phròiseasan 100ms de ùine CPU a chaitheamh gach 50ms;
    • air a chur ris bun-structar tùsail airson luchdan prògram BPF a chruthachadh, a leigeas le luchdachadh sìos dìreach prògraman BPF air an soidhnigeadh le iuchair dhidseatach earbsach;
    • chuir e gnìomh futex ùr FUTEX_LOCK_PI2 ris, a chleachdas timer monotonach gus an ùine a-mach obrachadh a-mach, a bheir aire don ùine a chuir an siostam seachad ann am modh cadail;
    • airson ailtireachd RISC-V, taic airson duilleagan cuimhne mòra (Duilleagan Mòra Transparent) agus an comas na KFENCE gus mearachdan aithneachadh nuair a bhios tu ag obair le cuimhne;
    • a-steach don ghairm siostam madvise (), a bheir seachad dòigh gus riaghladh cuimhne pròiseas a bharrachadh, air a chur ris Brataichean MADV_POPULATE_READ agus MADV_POPULATE_WRITE gus “faochadh duilleag” a ghineadh air a h-uile duilleag cuimhne a tha air a mhapadh airson gnìomhachd leughaidh no sgrìobhaidh, gun a bhith a’ coileanadh leughadh no sgrìobhadh fìor (ro-làimh). Faodaidh cleachdadh brataichean a bhith feumail airson dàil ann an coileanadh a’ phrògraim a lughdachadh, le taing do choileanadh for-ghnìomhach an inneal-làimhseachaidh “faochadh duilleag” airson a h-uile duilleag nach deach a riarachadh aig an aon àm, gun a bhith a’ feitheamh ris an fhìor ruigsinneachd orra;
    • ann an siostam deuchainn aonad kuit air a chur ris taic airson deuchainnean a ruith ann an àrainneachd QEMU;
    • chuir luchd-lorg ùr ris: "osnais" gus sùil a chumail air dàil tagraidh air adhbhrachadh le làimhseachadh brisidh, agus " timerlat " gus fiosrachadh mionaideach a thaisbeanadh mu dàil nuair a dhùisgeas tu bho chomharradh timer;
  • virtualization agus tèarainteachd:
    • air a chur ris call siostam memfd_secret(), a leigeas leat àite cuimhne prìobhaideach a chruthachadh ann an àite seòlaidh iomallach, ri fhaicinn a-mhàin don phròiseas sealbhadair, nach eil air a nochdadh ann am pròiseasan eile agus nach eil ruigsinneach gu dìreach don kernel;
    • ann an siostam sìoltachaidh gairm siostam seccomp, nuair a ghluaiseas tu luchd-làimhseachaidh glasaidh gu àite luchd-cleachdaidh, tha e comasach aon obrachadh atamach a chleachdadh gus tuairisgeul faidhle a chruthachadh airson gnìomh iomallach agus a thilleadh nuair a bhios tu a’ giullachd gairm siostaim. Tha an gnìomh a thathar a’ moladh a’ fuasgladh an duilgheadas le briseadh air an inneal-làimhseachaidh ann an àite luchd-cleachdaidh nuair a ruigeas comharra;
    • air a chur ris inneal ùr gus rian a chumail air cuingealachadh ghoireasan ann an ainm-spàs ID a’ chleachdaiche, a cheanglas cunntairean rlimit fa leth ri neach-cleachdaidh anns an “user namespace”. Bidh an t-atharrachadh a’ fuasgladh na duilgheadas le bhith a’ cleachdadh cunntairean ghoireasan cumanta nuair a bhios aon neach-cleachdaidh a’ ruith phròiseasan ann an diofar shoithichean;
    • tha an hypervisor KVM airson siostaman ARM64 air comas a chuir ris an leudachadh MTE (MemTag, Memory Tagging Extension) a chleachdadh ann an siostaman aoighean, a leigeas leat tagaichean a cheangal ri gach gnìomhachd riarachadh cuimhne agus a chuir air dòigh sgrùdadh cleachdadh ceart de chomharran gus casg a chuir air cleachdadh. so-leòntachd air adhbhrachadh le bhith a’ faighinn cothrom air blocaichean cuimhne a chaidh a shaoradh mar-thà, a’ cur thairis air bufairean, slighean a-steach mus tèid an tòiseachadh agus an cleachdadh taobh a-muigh a’ cho-theacsa làithreach;
    • Faodar Dearbhadh Pointer a thug an àrd-ùrlar ARM64 a-nis a rèiteachadh air leth airson kernel agus àite luchd-cleachdaidh. Leigidh an teicneòlas leat stiùireadh sònraichte ARM64 a chleachdadh gus seòlaidhean tilleadh a dhearbhadh le bhith a’ cleachdadh ainmean-sgrìobhte didseatach a tha air an stòradh ann am pìosan àrda a’ phuing fhèin nach deach a chleachdadh;
    • ann am modh cleachdaiche Linux air a chur ris taic airson cleachdadh dhraibhearan airson innealan PCI le bus PCI brìgheil, air a chuir an gnìomh leis an draibhear PCI-over-virtio;
    • airson siostaman x86, taic a bharrachd airson an inneal paravirtualized virtio-iommu, a leigeas leat iarrtasan IOMMU a chuir, leithid ATTACH, DETACH, MAP agus UNMAP, thairis air còmhdhail virtio gun a bhith ag aithris clàran duilleag cuimhne;
    • Airson Intel CPUs, bhon teaghlach Skylake gu Coffee Lake, tha cleachdadh Intel TSX (Transactional Synchronization Extensions), a tha a’ toirt seachad innealan airson coileanadh thagraidhean ioma-snàthainn a leasachadh le bhith a’ cuir às do ghnìomhachd sioncronaidh neo-riatanach gu dinamach, air a chiorramachadh gu bunaiteach. Tha leudachadh air a chiorramachadh air sgàth 's gum faodadh ionnsaighean a bhith ann Zombieload, a 'làimhseachadh aodion fiosrachaidh tro shianalan treas-phàrtaidh a tha a' tachairt nuair a bhios an uidheamachd airson briseadh asyncronach air gnìomhachd (TAA, TSX Asynchronous Abort);
  • fo-shiostam lìonra:
    • amalachadh leantainneach a-steach do chridhe MPTCP (MultiPath TCP), leudachadh air a’ phròtacal TCP airson obrachadh ceangal TCP a chuir air dòigh le lìbhrigeadh pacaidean aig an aon àm air grunn shlighean tro dhiofar eadar-aghaidh lìonra co-cheangailte ri diofar sheòlaidhean IP. Anns an iris ùr air a chur ris inneal airson na poileasaidhean hashing trafaic agad fhèin a shuidheachadh airson IPv4 agus IPv6 (poileasaidh hash ioma-fhillte), ga dhèanamh comasach bho àite an neach-cleachdaidh faighinn a-mach dè na raointean ann am pacaidean, a’ toirt a-steach feadhainn dùinte, a thèid a chleachdadh nuair a thathar a’ tomhas an hash a cho-dhùineas an roghainn slighe airson a 'phacaid;
    • chaidh taic socaid a chuir ris an virtio còmhdhail brìgheil SOCK_SEQPACKET (tar-chur datagrams ann an òrdugh agus earbsach);
    • Chaidh comasan inneal socaid SO_REUSEPORT a leudachadh, a leigeas le grunn socaidean èisteachd ceangal ri aon phort aig an aon àm gus ceanglaichean fhaighinn le cuairteachadh iarrtasan a tha a’ tighinn a-steach aig an aon àm thar gach socaid ceangailte tro SO_REUSEPORT, a nì sìmpleachadh air cruthachadh thagraidhean frithealaiche ioma-snàithichte . Anns an tionndadh ùr air a chur ris dòigh air smachd a ghluasad gu socaid eile gun fhios nach fàilligeadh nuair a dh’ obraicheas tu iarrtas leis an t-socaid a chaidh a thaghadh an toiseach (a ’fuasgladh na duilgheadas le call cheanglaichean fa leth nuair a thèid seirbheisean ath-thòiseachadh);
  • uidheamachd:
    • Anns an amdgpu driver air a chur an gnìomh taic airson an t-sreath ùr AMD Radeon RX 6000 de GPUs, leis an ainm “Beige Goby” (Navi 24) agus “Yellow Carp”, a bharrachd air taic nas fheàrr airson Aldebaran GPU (gfx90a) agus Van Gogh APU. Chuir sinn ris a’ chomas a bhith ag obair aig an aon àm le grunn phannalan eDP. Airson APU Renoir, tha taic airson a bhith ag obair le bufairean crioptaichte ann an cuimhne bhidio (TMZ, Trusted Memory Zone) air a chuir an gnìomh. Taic a bharrachd airson cairtean grafaiceachd teth-unplug. Airson Radeon RX 6000 (Navi 2x) GPUs agus AMD GPUs nas sine, tha taic airson inneal sàbhalaidh cumhachd ASPM (Active State Power Management) air a chomasachadh gu bunaiteach, a chaidh a chomasachadh roimhe seo a-mhàin airson Navi 1x, Vega agus Polaris GPUs;
    • airson sgoltagan AMD, chaidh taic airson cuimhne brìgheil co-roinnte (SVM, cuimhne brìgheil co-roinnte) a chuir ris stèidhichte air fo-shiostam HMM (riaghladh cuimhne heterogeneous), a leigeas le innealan a chleachdadh leis na h-aonadan riaghlaidh cuimhne aca fhèin (MMU, aonad riaghlaidh cuimhne), a gheibh cothrom air prìomh chuimhne. A 'gabhail a-steach cleachdadh HMM, faodaidh tu àite seòladh co-roinnte a chuir air dòigh eadar an GPU agus CPU, anns am faigh an GPU cothrom air prìomh chuimhne a' phròiseas;
    • taic teicneòlais tùsail a bharrachd Tionndadh Smart AMD, a bhios gu dinamach ag atharrachadh paramadairean caitheamh cumhachd an CPU agus GPU air coimpiutairean-uchd le chipset agus cairt grafaiceachd AMD gus coileanadh àrdachadh nuair a bhios geamannan, deasachadh bhidio agus toirt seachad 3D;
    • Anns an i915 draibhear airson intel video card air a thoirt a-steach taic airson sgoltagan Intel Alderlake P;
    • chuir e draibhear drm/hyperv ris airson an inneal-atharrachaidh grafaigean brìgheil Hyper-V;
    • air a chur ris Dràibhear grafaigean simpledrm a chleachdas am bufair frèam EFI-GOP no VESA a thug firmware UEFI no BIOS seachad airson toradh. Is e prìomh adhbhar an draibhear comasan toraidh grafaigeach a thoirt seachad aig ìrean tòiseachaidh tòiseachaidh, mus gabh draibhear DRM slàn a chleachdadh. Faodar an draibhear a chleachdadh cuideachd mar fhuasgladh sealach airson uidheamachd aig nach eil draibhearan DRM dùthchasach fhathast;
    • air a chur ris taic coimpiutair uile-ann-aon Raspberry Pi 400;
    • Chuir sinn draibhear dell-wmi-privacy ris gus taic a thoirt do na suidsichean bathar-cruaidh camara is microfòn a tha air an toirt a-steach do choimpiutairean-uchd Dell;
    • airson coimpiutairean laptop Lenovo air a chur ris Eadar-aghaidh WMI airson paramadairean BIOS atharrachadh tro sysfs / sys/class/firmware-atributes/;
    • leudachadh taic airson innealan le eadar-aghaidh USB4;
    • air a chur ris taic airson cairtean fuaim agus codecs AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 agus Texas Instruments TAS2505. Taic claisneachd nas fheàrr air coimpiutairean-glùine HP agus ASUS. Air a chur ris pìosan gus dàil a lughdachadh mus tòisich claisneachd a’ cluich air innealan le eadar-aghaidh USB.

Stòr - opennet.ru.

Source: linux.org.ru