Pata Linux 5.14

Pata Linux 5.14

I muri i nga marama e rua o te whanaketanga, ko Linus Torvalds whakaurua tuku kernel Linux 5.14. I roto i nga huringa tino rongonui: hou quotactl_fd() me te memfd_secret() waea punaha, te tango i nga whakaaro me nga kaitaraiwa mata, I/O hou kaiwhakahaere matua mo cgroup, SCHED_CORE aratau whakahōtaka mahi, hanganga mo te hanga i nga kaieke kaupapa BPF manatoko.

Kei roto i te putanga hou nga whakatikatika 15883 mai i nga kaiwhakawhanake 2002, ko te rahi o te papaki ko te 69 MB (ko nga huringa i pa ki nga konae 12580, 861501 rarangi o te waehere i taapirihia, 321654 nga raina i mukua). Tata ki te 47% o nga huringa katoa i whakauruhia ki roto i te 5.14 e pa ana ki nga taraiwa taputapu, tata ki te 14% o nga huringa e pa ana ki te whakahou i te waehere e pa ana ki nga hoahoanga taputapu, 13% e pa ana ki te puranga whatunga, 3% e pa ana ki nga punaha konae, me te 3% e pa ana ki nga punaha iti o roto.

Main nga mahi auaha:

  • puunaha iti kōpae, whakauru/putanga me nga punaha konae:
    • mo cgroup whakatinana te kaiwhakahaere matua I/O hou - rq-qos, ka taea te whakahaere i te kaupapa matua o nga tono ki te aukati i nga taputapu i hangaia e nga mema o ia cgroup. Kua taapirihia te tautoko a te kaiwhakahaere kaupapa matua hou ki te whakahōtaka I/O-mq-wa;
    • i runga i te punaha konae ext4 whakatinana Ko te whakahau ioctl hou EXT4_IOC_CHECKPOINT, e akiaki ana i nga tauwhitinga katoa e tatari ana mai i te raarangi me nga kaitarai e hono ana ki te kopae, me te tuhirua hoki i te waahi e whakamahia ana e te roko i roto i te rokiroki. I whakaritea te whakarereketanga hei waahanga o te kaupapa hei aukati i te pakaru o nga korero mai i nga punaha konae;
    • i Btrfs whakauruhia Te arotautanga o nga mahi: Ma te whakakore i te takiuru koretake o nga huanga roa i te wa e mahia ana te fsync, ka piki ake te mahinga o nga mahi kaha me nga huanga roa ki te 17%. I tua atu, i te wa e mahi ana i nga mahi kuti kaore e pa ki nga whanui, ka monokia te tukutahitanga katoa, na te mea i whakaitihia te wa mahi ma te 12%. Kua tāpirihia he tautuhinga ki te sysfs hei whakawhāiti i te hōkaiipurangi I/O ina tirohia te FS. Kua taapirihia nga waea ioctl ki te whakakore i te whakarereke me te whakakore i nga mahi taputapu;
    • i roto i te XFS mahi ano te whakatinanatanga o te keteroki buffer, ka whakawhitia ki te tohatoha o nga wharangi mahara i roto i te aratau puranga. Te pai ake o te keteroki;
    • I taapirihia e F2FS tetahi whiringa ki te mahi i roto i te aratau panui-anake me te whakatinana i te aratau keteroki poraka kōpeke (compress_cache) hei whakapai ake i te mahi panui matapōkere. Kua whakatinanahia te tautoko mo te kopiri i nga konae kua mapi ki te mahara ma te whakamahi i te mahi mmap(). Hei whakakore i te kōpeketanga o te konae ma te kanohi kanohi, kua whakatakotohia he whiringa whakaurunga nocompress;
    • kua mahia nga mahi i roto i te taraiwa exFAT hei whakapai ake i te hototahi ki te rokiroki o etahi kamera mamati;
    • waea pūnaha taapiri quotactl_fd(), ka taea e koe te whakahaere i nga waahi kaore i roto i te konae taputapu motuhake, engari ma te tautuhi i tetahi kaiwhakaahua konae e hono ana ki te punaha konae e tonohia ana te motunga;
    • Ko nga taraiwa tawhito mo nga taputapu poraka me te atanga IDE kua tangohia mai i te kernel; kua roa kua whakakapihia e te libata subsystem. Ko te tautoko mo nga taputapu tawhito kua mau tonu, ko nga huringa e pa ana ki te kaha ki te whakamahi i nga taraiwa tawhito, i te wa e whakamahia ana nga puku i kiia ko /dev/hd*, kaua ko /dev/sd*;
    • Ko te taraiwa "raw" kua tangohia mai i te kernel, e whakarato ana i te urunga kore ki te aukati i nga taputapu ma te atanga /dev/raw. Kua roa tenei mahi kua whakatinanahia ki nga tono ma te whakamahi i te haki O_DIRECT;
  • mahara me nga ratonga punaha:
    • kua whakatinanahia he aratau whakaritenga hou i roto i te kaihōtaka mahi SCHED_CORE, ka taea e koe te whakahaere ko wai nga tukanga ka taea te whakahaere tahi i runga i te kaupapa CPU kotahi. Ka taea te tautapa ki ia tukanga he kaitautuhi pihikete e tautuhi ana i te whānuitanga o te whakawhirinaki i waenga i nga tukanga (hei tauira, no te kaiwhakamahi kotahi, ipu ranei). I te wa e whakarite ana i nga mahi waehere, ka taea e te kaihōtaka te whakarite kia tiritirihia tetahi matua PTM ki roto i nga tukanga e pa ana ki te rangatira kotahi, ka taea te whakamahi ki te aukati i etahi whakaeke Specter ma te aukati i nga mahi pono me te kore pono kia rere i runga i te miro SMT (Hyper Threading) kotahi. ;
    • mo te tikanga cgroup, kua whakatinanahia te tautoko mo te mahi patu, ka taea e koe te patu i nga tukanga katoa e pa ana ki te roopu i te wa kotahi (tuku SIGKILL) ma te tuhi "1" ki te konae mariko cgroup.kill;
    • kua whakawhänuihia nga kaha e pa ana ki te urupare ki te kitenga o nga raka wehe ("raka wehe") ka puta i te wa e uru ana ki nga raraunga kore i roto i te mahara na te mea i te wa e mahia ana he tohutohu ngota, ka whakawhiti nga raraunga i nga raina keteroki PTM e rua. Ko tenei aukati ka arahi ki te heke nui o te mahi, na i mua ka taea te whakakore i te tono i aukati ai. Ka taapirihia e te tukunga hou te tawhā raina whakahau kernel "split_lock_detect=ratelimit:N", e taea ai e koe te tautuhi i te rohe-whanui o te punaha mo te tere o nga mahi maukati ia hekona, i muri i te nui atu o nga mahi ka puta mai te raka wehe. me kaha ki te whakamutu mo te 20 ms hei utu mo te whakamutu;
    • Ko te cgroup bandwidth controller CFS (CFS bandwidth controller), e whakatau ana i te nui o te wa tukatuka ka taea te toha ki ia cgroup, he kaha ki te tautuhi i nga rohe e iti ana i te roanga o te mahi, e pai ake ai te whakarite i nga kawenga tairongo. Hei tauira, ko te tautuhi i te cpu.cfs_quota_us ki te 50000 me te cpu.cfs_period_us ki te 100000 ka taea e te roopu o nga tukanga te moumou i te 100ms o te wa CPU ia 50ms;
    • tāpirihia anga hanga tuatahi mo te hanga i nga kaieke hotaka BPF, ka taea te tango i nga kaupapa BPF anake kua hainatia me te taviri mamati pono;
    • i taapirihia he mahinga futex hou FUTEX_LOCK_PI2, e whakamahi ana i te taima monotonika ki te tatau i te waahi, e whai whakaaro ana ki te wa i pau i te punaha i roto i te aratau moe;
    • mo te hoahoanga RISC-V, tautoko mo nga wharangi mahara nui (Transparent Huge-Pages) me te kaha ki te whakamahi KFENCE ki te tautuhi i nga hapa i te wa e mahi ana me te mahara;
    • ki te waea madvise() pūnaha, e whakarato ana i te huarahi ki te arotau i te whakahaere mahara tukanga, tāpirihia Ko nga haki MADV_POPULATE_READ me MADV_POPULATE_WRITE hei whakaputa "hapa wharangi" ki runga i nga wharangi mahara katoa kua mapi mo nga mahi panui, tuhi ranei, me te kore e mahi i te panui me te tuhi (prefault). Ko te whakamahinga o nga haki ka whai hua mo te whakaiti i nga whakaroa i roto i te mahi o te kaupapa, na te kaha o te mahi a te kaihautu "wharangi wharangi" mo nga wharangi katoa kaore i tohatohahia i te wa kotahi, me te kore e tatari mo te uru atu ki a raatau;
    • i roto i te punaha whakamatautau wae kunit tāpirihia tautoko mo te whakahaere i nga whakamatautau i te taiao QEMU;
    • ka taapirihia nga kaiwhaiwhai hou: "haruru" ki te whai i nga roanga tono i puta mai i te whakahaeretanga haukoti, me te " timerlat " ki te whakaatu i nga korero mo te roa o te oho i te oho mai i te tohu matawā;
  • mariko me te haumarutanga:
    • kua taapirihia waea pūnaha memfd_huna(), ka taea e koe te hanga i tetahi waahi mahara motuhake i roto i te waahi waahi noho motuhake, ka kitea anake e te rangatira o nga mahi, kaore e kitea i roto i etahi atu mahinga, kaore e uru tika ki te kernel;
    • i roto i te punaha tātari waea a seccomp, i te wa e nekehia ana nga kaikawe raka ki roto i te waahi kaiwhakamahi, ka taea te whakamahi i tetahi mahi ngota ki te hanga i tetahi kaiwhakaahua konae mo tetahi mahi motuhake me te whakahoki mai i te wa e tukatuka ana i te waea punaha. Ko te mahi e whakaarohia ana ka whakaoti te raru me te aukatinga o te kaihautu i te waahi kaiwhakamahi ina tae mai he tohu;
    • kua taapirihia tikanga hou ki te whakahaere i te whakawhāiti rauemi i roto i te mokowāingoa ID kaiwhakamahi, e herea ana nga porotiti rlimit takitahi ki tetahi kaiwhakamahi i roto i te "kaiwhakamahi ingoa". Ka whakatauhia e te huringa te raru ma te whakamahi i nga porotiti rauemi noa ina whakahaere tetahi kaiwhakamahi i nga tukanga i roto i nga ipu rereke;
    • kua taapirihia e te KVM hypervisor mo nga punaha ARM64 te kaha ki te whakamahi i te toronga MTE (MemTag, Memory Tagging Extension) i roto i nga punaha manuhiri, ka taea e koe te here i nga tohu ki ia mahi tohatoha mahara me te whakarite i te tirotiro i te whakamahi tika o nga tohu hei aukati i te whakamahi nga whakaraeraetanga i puta mai i te urunga atu ki nga poraka mahara kua wetekina, te puhake i nga putunga, te uru i mua i te arawhiti me te whakamahi i waho o te horopaki o naianei;
    • Ko te Motuhēhēnga Tohu e whakaratohia ana e te papaaho ARM64 ka taea te whirihora motuhake mo te kirikiri me te mokowā kaiwhakamahi. Ma te hangarau ka taea e koe te whakamahi i nga tohutohu ARM64 motuhake ki te manatoko i nga wahitau whakahoki ma te whakamahi i nga waitohu matihiko ka rongoa ki nga moka o runga kaore i whakamahia o te atatohu ake;
    • i roto i te aratau-kaiwhakamahi Linux tāpirihia tautoko mo te whakamahi i nga taraiwa mo nga taputapu PCI me te pahi PCI mariko, i whakatinanahia e te taraiwa PCI-over-virtio;
    • mo nga punaha x86, he tautoko taapiri mo te taputapu paravirtualized virtio-iommu, ka taea e koe te tuku tono IOMMU, penei i te ATTACH, DETACH, MAP me UNMAP, i runga i te kawe virtio me te kore e peehia nga tepu whaarangi mahara;
    • Mo nga Intel CPUs, mai i te whanau Skylake ki Coffee Lake, ko te whakamahi i te Intel TSX (Transactional Synchronization Extensions), e whakarato ana i nga taputapu mo te whakapai ake i te mahi o nga tono miro-maha ma te whakakore i nga mahi tukutahi kore e tika ana, kua whakakorehia e te taunoa. Kua monoa nga toronga na te tupono ka whakaekea Zombieload, te raweke i te rerenga o nga korero na roto i nga hongere tuatoru-tuatoru ka puta i te wa e mahi ana te tikanga mo te aukati tukutahi o nga mahi (TAA, TSX Asynchronous Abort);
  • pūnaha iti whatunga:
    • te whakauru tonu ki roto i te matua o te MPTCP (MultiPath TCP), he toronga o te kawa TCP mo te whakahaere i te mahi o te hononga TCP me te tukunga o nga paatete i te wa kotahi i runga i nga huarahi maha ma nga hononga whatunga rereke e hono ana ki nga wahitau IP rereke. I roto i te putanga hou kua taapirihia he tikanga mo te whakarite i a koe ake kaupapa here hashing waka mo IPv4 me IPv6 (kaupapa here hash maha), ka taea mai i te waahi kaiwhakamahi ki te whakatau kohea nga mara kei roto i nga paatete, tae atu ki nga mea kapi, ka whakamahia i te tatau i te hash e whakatau ana i te huarahi whiriwhiri. mo te putea;
    • kua taapirihia te tautoko turanga ki te virtio kawe mariko SOCK_SEQPACKET (te tuku tika me te pono o nga tohu raraunga);
    • Kua whakawhänuihia nga kaha o te tikanga turanga SO_REUSEPORT, e taea ai e te maha o nga turanga whakarongo ki te hono atu ki te tauranga kotahi i te wa kotahi ki te whiwhi hononga me te tohatoha o nga tono taumai i te wa kotahi puta noa i nga turanga katoa e hono ana ma SO_REUSEPORT, he maamaa te hanga o nga tono tūmau maha-miro. . I roto i te putanga hou tāpirihia te tikanga mo te whakawhiti mana ki tetahi atu turanga i te wa e rahua ana i te wa e tukatuka ana i te tono ma te turanga i tohua tuatahi (ka whakaoti i te raru me te ngaro o nga hononga takitahi i te wa e timata ana nga ratonga);
  • taputapu:
    • i roto i te taraiwa amdgpu whakatinana tautoko mo te raupapa AMD Radeon RX 6000 hou o nga GPU, kua whakaingoatia "Beige Goby" (Navi 24) me "Yellow Carp", me te tautoko pai ake mo Aldebaran GPU (gfx90a) me Van Gogh APU. Kua taapirihia te kaha ki te mahi tahi me etahi papa eDP. Mo APU Renoir, kua whakatinanahia te tautoko mo te mahi me nga kaitarai whakamunatia i roto i te mahara ataata (TMZ, Rohe Mahara Whakapono) kua whakatinanahia. He tautoko taapiri mo nga kaari whakairoiro wera-tango. Mo nga Radeon RX 6000 (Navi 2x) GPU me nga AMD GPU tawhito, ko te tautoko mo te ASPM (Active State Power Management) te mana whakaora hiko ka taea ma te taunoa, i whakahohea i mua mo Navi 1x, Vega me Polaris GPU anake;
    • mo nga maramara AMD, ko te tautoko mo te mahara mariko tiritiri (SVM, te mahara mariko tiritiri) kua taapirihia i runga i te punaha HMM (Heterogeneous memory management), e taea ai te whakamahi i nga taputapu me o raatau ake waahanga whakahaere mahara (MMU, waahanga whakahaere mahara), ka taea te uru ki te mahara matua. Tae atu ki te whakamahi i te HMM, ka taea e koe te whakarite i tetahi waahi wahitau tiritahi i waenga i te GPU me te PTM, ka taea e te GPU te uru ki te mahara matua o te mahi;
    • tāpirihia te tautoko hangarau tuatahi AMD Smart Huri, e huri kaha ana i nga tawhā kohi hiko o te PTM me te GPU i runga i nga rorohiko rorohiko me te chipset me te kaari whakairoiro AMD hei whakanui ake i nga mahi i te wa e petipeti ana, whakatika ataata me te whakaputa 3D;
    • i roto i te taraiwa i915 mo nga kaari ataata Intel whakauru tautoko mo nga maramara Intel Alderlake P;
    • tāpirihia te taraiwa drm/hyperv mo te taapiri whakairoiro mariko Hyper-V;
    • kua taapirihia taraiwa whakairoiro simpledrm e whakamahi ana i te EFI-GOP, VESA framebuffer ranei e whakaratohia ana e te UEFI firmware, BIOS ranei mo te whakaputa. Ko te kaupapa matua o te taraiwa ko te whakarato i nga kaha whakaputa kauwhata i nga waahanga tuatahi o te whawhai, i mua i te whakamahi i te taraiwa DRM katoa. Ka taea hoki te whakamahi i te taraiwa hei otinga rangitahi mo nga taputapu kaore ano he taraiwa DRM taketake;
    • tāpirihia tautoko rorohiko katoa-i-kotahi Pihikete Pi 400;
    • Kua taapirihia te taraiwa dell-wmi-privacy ki te tautoko i te kamera me nga whakahuri taputapu hopuoro kei roto i nga rorohiko Dell;
    • mo nga rorohiko a Lenovo kua taapirihia Atanga WMI mo te huri i nga tawhā BIOS ma te sysfs /sys/class/firmware-huanga/;
    • whakawhänui tautoko mo nga taputapu me te atanga USB4;
    • tāpirihia tautoko mo nga kaari tangi me nga kotēkē AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 me Texas Instruments TAS2505. He pai ake te tautoko ororongo i runga i nga rorohiko HP me ASUS. Kua tapirihia papaki hei whakaiti i te roa i mua i te tiimata o te ororongo ki nga taputapu whai atanga USB.

Puna – opennet.ru.

Source: linux.org.ru