Linux 5.6 tuku kernel

I muri i nga marama e rua o te whanaketanga, ko Linus Torvalds whakaurua tuku kernel Linux 5.6. I roto i nga huringa tino rongonui: te whakaurunga o te atanga WireGuard VPN, te tautoko mo te USB4, nga ingoa mokowhiti mo te wa, te kaha ki te hanga i nga kaikawe putunga TCP ma te whakamahi i te BPF, te tautoko tuatahi mo te MultiPath TCP, te whakakore i te kernel o te raru 2038, te tikanga "bootconfig". , ZoneFS.

Kei roto i te putanga hou 13702 whakatika mai i nga kaiwhakawhanake 1810,
te rahi o te papaki - 40 MB (nga huringa i pa 11577 konae, 610012 rarangi waehere i taapirihia,
294828 nga rarangi i tangohia). Tata ki te 45% o te katoa i whakaatuhia i te 5.6
Ko nga huringa e pa ana ki nga taraiwa taputapu, tata ki te 15% o nga huringa
te whakaaro ki te whakahou i te waehere motuhake mo nga hoahoanga taputapu, 12%
e hono ana ki te puranga whatunga, 4% ki nga punaha konae me te 3% ki roto
nga punaha iti kernel.

Main nga mahi auaha:

  • Pūnaharoto whatunga
    • Kua tapirihia whakatinanatanga o te atanga VPN WireGuard, ka whakatinanahia i runga i nga tikanga whakamunatanga hou (ChaCha20, Poly1305, Curve25519, BLAKE2s), he ngawari ki te whakamahi, kaore he raruraru, kua whakamatauhia i roto i te maha o nga whakatinanatanga nui me te whakarato i nga mahi tino nui (3,9 nga wa tere atu i te OpenVPN i roto i nga tikanga. o te whakaputanga). Ka whakamahi a WireGuard i te ariā o te ararere matua whakamunatanga, e uru ana ki te whakapiri i tetahi kii motuhake ki ia atanga whatunga me te whakamahi hei here i nga kii a te iwi. Ka whakawhitihia nga taviri a te iwi ki te whakarite hononga kia rite ki te SSH. Ko nga tikanga o mua mo te mahi a WireGuard ko kawea atu mai i te whare pukapuka konutea hei waahanga o te Crypto API paerewa me te whakauru ki roto ki te matua 5.5.
    • I tiimata te whakaurunga o nga waahanga e tika ana hei tautoko i te MPTCP (MultiPath TCP), he toronga o te kawa TCP mo te whakarite 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. Mo nga tono whatunga, he rite te ahua o taua hononga whakahiato ki te hononga TCP auau, a ko nga arorau wehenga rere katoa ka mahia e te MPTCP. Ka taea te whakamahi TCP Multipath ki te whakanui ake i te whakaputanga me te whakapiki i te pono. Hei tauira, ka taea te whakamahi MPTCP ki te whakarite i te tuku raraunga ki runga waea atamai ma te whakamahi i nga hononga WiFi me te 4G i te wa kotahi, hei whakaiti ranei i nga utu ma te hono i tetahi tūmau ma te whakamahi i etahi hononga iti hei utu mo te kotahi utu nui.
    • Kua tapirihia tautoko mo te raupapa tukatuka raupapa whatunga sch_ets (Whakanuia te Whiriwhiringa Whakawhiti, IEEE 802.1Qaz), e whakarato ana i te kaha ki te tohatoha i te bandwidth i waenga i nga momo momo waka. Mēnā kei raro iho te uta o tētahi akomanga waka i te hōkaiipurangi kua tohatohahia, ka whakaaetia e te ETS etahi atu akomanga waka ki te whakamahi i te bandwidth e waatea ana (kaore i whakamahia). Kua whirihorahia a Qdisc sch_ets hei whiunga PRIO me te whakamahi i nga karaehe waka ki te tautuhi i nga rohe whanui me te tiritahi. Ka mahi a ETS hei huinga o nga marautanga PRIO и DRR — mena he iti noa nga karaehe waka, ka whakamahia te PRIO, engari mena kaore he waka i roto i te rarangi, ka rite ki te DRR.
    • Kua taapirihia he momo kaupapa BPF hou BPF_PROG_TYPE_STRUCT_OPS, ka taea e koe te whakatinana i nga kaikawe mahi kernel ma te BPF. I tenei wa, ka taea te whakamahi i tenei waahanga ki te whakatinana i nga huringa whakahaere a te TCP i roto i te ahua o nga kaupapa BPF. Hei tauira whakaarohia Te kaupapa BPF me te whakatinana algorithm DCTCP.
    • Ka whakaaetia ki roto i te uho huringa, taputapu whakamaori matawai me te ioctl() hei whakamahi atanga netlink. Ko te atanga hou he maamaa ake te taapiri i nga taapiri, te whakapai ake i te whakahaere hapa, te tuku whakamohiotanga ina huri te kawanatanga, ka ngawari te taunekeneke i waenga i te kernel me te mokowā kaiwhakamahi, me te whakaiti i te maha o nga rarangi ingoa e tika ana kia tukutahi.
    • Kua taapirihia te whakaurunga o te FQ-PIE (Flow Queue PIE) i roto i te whatunga o te rarangi whakahaere algorithm, e whai ana ki te whakaiti i te paanga kino o te paatete paatete takawaenga ki nga taputapu whatunga taha (bufferbloat). Ko te FQ-PIE e whakaatu ana i te tino pai ina whakamahia i roto i nga punaha me nga pouwhanga taura.
  • Punaharoto kōpae, I/O me nga punaha konae
    • Mo te punaha konae Btrfs tāpirihia whakatinanatanga tukutahi o te mahi DISCARD (te tohu i nga poraka kua wetekina e kore e tika kia penapena tinana). I te tuatahi, i mahia nga mahi DISCARD i te wa kotahi, tera pea ka paheke te mahi na te puku e tatari ana kia oti nga whakahau e rite ana. Ko te whakatinanatanga tukutahi ka taea e koe kia kaua e tatari mo te puku ki te whakaoti i te DISCARD me te mahi i tenei mahi ki muri.
    • I roto i te XFS i mahia Te horoi i te waehere i whakamahi i nga porotiti wa moka-32 tawhito (kua whakakapihia te momo time_t e te time64_t), ka puta te raruraru 2038. Kua whakatikahia nga hapa me te pirau mahara i puta i runga i nga papaaho 32-bit. Kua mahi ano te waehere ki te mahi me nga huanga roa.
    • Ki te punaha kōnae ext4 whakauruhia Nga arotautanga mahi e pa ana ki te whakahaere i te maukati inode i te waa panui me te tuhi. Kua pai ake te mahi tuhi i roto i te aratau I/O Direct. Hei whakangawari i te tātaritanga o nga raru, ka penapena nga waehere hapa tuatahi me te whakamutunga ki te superblock.
    • I runga i te punaha konae F2FS whakatinana te kaha ki te rokiroki raraunga i roto i te ahua kōpeke. Mo te kōnae takitahi, whaiaronga ranei, ka taea te whakaahei i te kōpeketanga ma te whakamahi i te whakahau "chattr +c file" ranei "chattr +c dir; pa ki dir/file". Hei kopiri i te waahanga katoa, ka taea e koe te whakamahi i te "-o compress_extension=ext" kōwhiringa i roto i te taputapu maunga.
    • Kei roto i te kernel he punaha konae RoheFS, e whakamaarama ana i nga mahi taumata-iti me nga taputapu rokiroki roherohe. Ko nga puku roherohe ko nga taputapu kei runga i nga kōpae autō pakeke, i te NVMe SSDs ranei, te waahi rokiroki ka wehewehea ki nga rohe e hanga ana i nga roopu poraka, waahanga ranei, ka whakaaetia te taapiri raupapatanga o nga raraunga, me te whakahou i te roopu poraka katoa. I whakawhanakehia a FS ZoneFS e Western Digital me te hono i ia rohe i roto i te puku me tetahi konae motuhake ka taea te whakamahi ki te penapena raraunga i roto i te aratau mata kaore he raweke i te waahanga me te taumata poraka, ara. Whakaaetia nga tono ki te whakamahi i te konae API hei utu mo te uru tika ki te taputapu paraka ma te whakamahi ioctl.
    • I roto i te NFS, ka whakakorehia nga waahanga whakapuru ki runga i te UDP ma te taunoa. He tautoko taapiri mo te kaha ki te kape tika i nga konae i waenga i nga kaitoro, kua tautuhia i roto i te tohu NFS 4.2. Kua taapirihia he waahanga "softreval" hou, ka taea te whakamahi i nga uara huanga keteroki ki te kore te kaimau. Hei tauira, i te wa e tohu ana i tenei waahanga, i muri i te kore e waatea te tūmau, ka taea tonu te neke haere i nga huarahi i roto i te wehenga NFS me te uru atu ki nga korero kua tau ki roto i te keteroki.
    • I mahia te arotautanga o te mahi a te tikanga fs-verity, whakamahia hei aro turuki i te pono me te whakamotuhēhēnga o ngā kōnae takitahi. Kua piki ake te tere panui raupapa na te whakamahi i te rakau Hash Merkle. Ko te mahinga o FS_IOC_ENABLE_VERITY kua arotauhia ina karekau he raraunga i roto i te keteroki (kua tonohia te panuitanga o nga wharangi whai raraunga).
  • Mariko me te Haumarutanga
    • Ko te kaha ki te whakakore i te kōwae SELinux i te wa e rere ana kua whakakorehia, ka whakakorehia te tango i te SELinux kua whakahohehia a muri ake nei. Hei whakakore i te SELinux ka hiahia koe ki te tuku i te tawhā "selinux=0" i runga i te raina whakahau kernel.
    • Kua tapirihia tautoko mo nga mokowā ingoa mo te wa (waahi ingoa mokowā), ka taea e koe te here i te ahua o te karaka punaha ki te ipu (CLOCK_REALTIME,
      CLOCK_MONOTONIC, CLOCK_BOOTTIME), whakamahia to wa ake i roto i te ipu, a, i te hekenga o te ipu ki tetahi atu kaihautu, me whakarite kia noho tonu nga panui CLOCK_MONOTONIC me CLOCK_BOOTTIME (whakaarohia te wa i muri i te utaina, me te kore whakaaro kei roto i te aratau moe. ).

    • Kua tangohia te /dev/pokapu aukati tupurangi. He rite te whanonga o /dev/random ki te /dev/urandom mo te aukati i te aukati entropy i muri i te tiimatanga puna.
    • Kei roto i te kernel matua he taraiwa e taea ai e nga punaha manuhiri te whakahaere i a VirtualBox ki te whakairi i nga raarangi i kaweake e te taiao manaaki (VirtualBox Shared Folder).
    • Kua taapirihia he huinga papaki ki te punaha iti BPF (Kaituku BPF), i te wa e whakamahi ana i te tikanga Retpoline hei whakamarumaru mai i nga whakaeke a te karaehe Specter V2, ka taea e koe te whakanui ake i te kaha o te waea ki nga kaupapa BPF ina puta nga huihuinga e pa ana ki a raatau (hei tauira, ka taea te tere ake te waea o nga kaikawe XDP ina he kua tae mai te kete whatunga).
    • He taraiwa taapiri hei tautoko i te TEE (Taiao Whakatupato Whakapono) i hangaia ki roto i nga APU AMD.
  • Mahara me nga ratonga punaha
    • Kua taapirihia e te BPF te tautoko mo nga mahi o te ao. Kei te whakahaeretia te whanaketanga hei waahanga o te kaupapa ki te taapiri tautoko mo nga whare pukapuka o nga mahi ka taea te whakauru ki nga kaupapa BPF. Ko te mahi ka whai ake ko te tautoko i nga toronga hihiri e tuku ana i nga mahi o te ao ki te utaina, tae atu ki te whakakapi i nga mahi o te ao i te wa e whakamahia ana. Ka taapirihia e te punaha iti BPF te tautoko mo tetahi momo mahi mapi (whakamahia ki te penapena raraunga tohe), e tautoko ana i te mahi i roto i te aratau puranga.
    • Kua tapirihia e Ko te taputapu "cpu_cooling" ka taea e koe te whakamatao i te PTM kua wera ma te tuu ki roto i te ahua mangere mo nga wa poto.
    • He waea punaha taapiri openat2(), e tuku ana i te huinga o nga haki taapiri hei whakawhāiti i te taumira ara konae (te aukati i te whakawhiti i nga tohu maunga, nga hononga tohu, nga hononga makutu (/proc/PID/fd), "../" nga waahanga).
    • Mo nga punaha rerekee i runga i te hoahoanga nui.LITTLE, te whakakotahi i nga uho PTM kaha me te iti ake te kaha ki roto i te maramara kotahi, ka whakatauhia te tawhā uclamp_min i te wa e mahi ana i nga mahi-waa (i puta kei roto i te kernel 5.3 he tikanga mo te pupuri i te uta). Ko tenei tawhā ka whakarite ka tukuna te mahi e te kaihōtaka ki runga i te matua PTM e tika ana te mahi.
    • Ka wetekina te kakano mai nga raruraru o 2038. I whakakapihia nga kaihautu whakamutunga e toe ana, i whakamahi i te momo 32-bit (int int) momo time_t mo te porotiti wa epochal, e mahara ana ki te purongo mai i te tau 1970, me puhake i te tau 2038.
    • Te whakapai tonutanga o te atanga I/O tukutahi io_uring, kei roto whakaratohia tautoko mo nga mahi hou: IORING_OP_FALLOCATE (rahui mo nga waahi kau), IORING_OP_OPENAT,
      IORING_OP_OPENAT2,
      IORING_OP_CLOSE (whakatuwhera me te kati i nga konae),
      IORING_OP_FILES_UPDATE (te taapiri me te tango i nga konae mai i te rarangi uru tere),
      IORING_OP_STATX (tono korero kōnae),
      IORING_OP_READ,
      IORING_OP_WRITE (nga tauritenga ngawari o IORING_OP_READV me IORING_OP_WRITEV),
      IORING_OP_FADVISE,
      IORING_OP_MADVISE (nga rereke tukutahi o nga waea posix_fadvise me madvise), IORING_OP_SEND,
      IORING_OP_RECV (tuku me te whiwhi raraunga whatunga),
      IORING_OP_EPOLL_CTL (whakamahia i runga i nga kaiwhakaahua konae epoll).

    • He waea punaha taapiri pidfd_getfd(), ka tuku i tetahi tukanga ki te tiki i tetahi kaiwhakaahua konae mo tetahi konae tuwhera mai i tetahi atu tukanga.
    • Kua whakatinanahia te tikanga "bootconfig", ka taea, hei taapiri i nga whiringa raina whakahau, ki te whakatau i nga tawhā o te kernel ma te konae tautuhinga. Hei taapiri i enei konae ki te ahua initramfs, ka whakaarohia te taputapu bootconfig. Ka taea te whakamahi i tenei ahuatanga, hei tauira, ki te whirihora i nga kprobes i te wa whakaoho.
    • I hoahoa ano he tikanga mo te tatari mo te tuhi me te panui raraunga i roto i nga paipa kore ingoa. Na te panonitanga i tere ake ai nga mahi penei i te whakarara whakarara o nga kaupapa nunui. Heoi, ka taea e te arotautanga te arai ki tetahi ahuatanga reihi i roto i te GNU hanga na te mea he pepeke i te tukunga 4.2.1, i whakatikahia i te putanga 4.3.
    • Kua taapirihia te haki PR_SET_IO_FLUSHER ki te prctl(), ka taea te whakamahi ki te tohu i nga tukanga mahara-kore e tika ana kia kore e herea ki nga rohe ina he iti te mahara o te punaha.
    • I runga i te punaha tohatoha mahara ION i whakamahia i roto i te Android, kua whakatinanahia he punaha iti dma-buf puranga, ka taea e koe te whakahaere i te tohatoha o te DMA buffers mo te tiri i nga waahi mahara i waenga i nga taraiwa, nga tono me nga momo punaha iti.
  • Hangahanga taputapu
    • He tautoko taapiri mo te toronga E0PD, i puta mai i te ARMv8.5 ka taea te whakamarumaru mai i nga whakaeke e pa ana ki te whakatinanatanga o nga tohutohu i runga i te PTM. Ko te whakamarutanga a-E0PD he iti ake te whakamarumaru o runga ake i te whakamarumaru KPTI (Kernel Page Ripanga Wehenga).
    • Mo nga punaha e pa ana ki te hoahoanga ARMv8.5, kua taapirihia te tautoko mo te ako RNG, e whai waahi ana ki tetahi taputapu hangahanga nama pseudo-tupurangi. I roto i te pata, ka whakamahia te tohutohu RNG ki te whakaputa i te entropy i te wa e arawhiti ana i te kaihanga tau pseudo-tupurangi.
    • Kua tangohia te tautoko mo te MPX (Whakaaronga Whakamaru Mahara) kua taapirihia ki te pata 3.19 a ka taea e koe te whakarite i te arowhai i nga tohu tohu kia mohio ai ka whakamanahia nga rohe o nga waahi mahara. Ko tenei hangarau kaore i whakamahia nuitia i roto i te hunga whakahiato, i tangohia mai i te GCC.
    • Mo te hoahoanga RISC-V, kua whakatinanahia te tautoko mo te KASan (Kernel address sanitizer) taputapu patuiro, e awhina ana ki te tautuhi i nga hapa i te wa e mahi ana me te mahara.
  • Tuhinga
    • Kua whakatinanahia te tautoko whakaingoatanga 4.0 USB, e ahu mai ana i te kawa Thunderbolt 3 me te whakarato i te uru ki te 40 Gbps, me te pupuri i te hototahi whakamuri ki te USB 2.0 me te USB 3.2. Ma te whakataurite ki Thunderbolt Ko te atanga USB 4.0 ka taea e koe te tarai i nga kawa rereke ki runga i te taura kotahi me te hono Momo-C, tae atu ki te PCIe, Whakaaturanga Tauranga me te USB 3.x, me nga mahinga rorohiko o nga kawa, hei tauira, mo te whakarite hononga whatunga i waenga i nga ope. Ko te whakatinanatanga ka hangaia i runga i te taraiwa Thunderbolt kua whakauruhia ki roto i te kernel Linux ka urutau ki te mahi me nga kaihautu me nga taputapu USB4-hototahi. Ko nga huringa ka taapiri i te tautoko mo nga taputapu Thunderbolt 3 ki te whakatinanatanga rorohiko a te Kaiwhakahaere Hononga, kei a ia te kawenga mo te hanga huarahi mo te hono i nga taputapu maha ma te hono kotahi.
    • I roto i te taraiwa amdgpu tāpirihia tautoko tuatahi mo te hangarau tiaki kape HDCP 2.x (High-bandwidth Digital Content Protection). He tautoko taapiri mo te maramara AMD Pollock ASIC i runga i te Raven 2. I whakatinanahia te kaha ki te tautuhi i te GPU mo nga whanau Renoir me Navi.
    • Ko te taraiwa DRM mo nga kaari ataata Intel tāpirihia Ko te tautoko a DSI VDSC mo nga maramara i runga i te Ice Lake me te Tiger Lake microarchitecture, kua whakatinanahia te LMEM mmap (whakamaharatanga a-rohe taputapu), kua pai ake te VBT (Video BIOS Table), kua whakatinanahia te tautoko HDCP 2.2 mo nga maramara Coffee Lake.
    • I haere tonu te mahi ki te whakakotahi i te waehere taraiwa amdkfd (mo nga GPU motuhake, penei i Fiti, Tonga, Polaris) me te taraiwa amdgpu.
    • Ko te taraiwa k10temp kua mahi ano, e tautoko ana inaianei i te whakaputa ngaohiko me nga tawhā o naianei mo nga AMD Zen CPUs, me te whakawhānui ake i nga korero mai i nga pūoko pāmahana i whakamahia i roto i te Zen me te Zen 2 CPUs.
    • I roto i te taraiwa nouveau tāpirihia te tautoko mo te aratau utaina firmware kua whakamanahia mo nga NVIDIA GPU i runga i te Turing microarchitecture (GeForce RTX 2000), i taea ai te tautoko mo te whakatere 3D mo enei kaari (te tango i te firmware whaimana me te waitohu mamati NVIDIA e hiahiatia ana). He tautoko taapiri mo te miihini whakairoiro TU10x. Kua whakatauhia nga raru mo te Ororongo HD.
    • He tautoko taapiri mo te taapiri raraunga ka tukuna ma te WhakaatuPort MST (Kawe-a-Maama).
    • Kua taapirihia he taraiwa hou "atu11k» mo nga maramara ahokore Qualcomm e tautoko ana i te 802.11ax.
      Ko te taraiwa kei runga i te puranga mac80211 me te tautoko i te waahi uru, te teihana mahi me nga aratau node whatunga mata.

    • Na roto i te sysfs, ka taea te uru atu ki nga panui pukoro pāmahana e whakamahia ana i runga i nga puku pakeke hou me nga SSD.
    • Kua tukuna huringa nui ki te pūnaha tangi ALSA, e whai ana ki te whakakore i te waehere o nga raruraru o 2038 (ka karo i te whakamahi i te momo 32-bit time_t i roto i nga atanga snd_pcm_mmap_status me snd_pcm_mmap_control). He tautoko taapiri mo nga kotēkē ororongo hou
      Qualcomm WCD9340/WCD9341, Realtek RT700, RT711, RT715, RT1308, Ingenic JZ4770.

    • Kua tapirihia taraiwa mo nga panui LCD Logic PD 28, Jimax8729d MIPI-DSI, igenic JZ4770, Sony acx424AKP, Leadtek LTK500HD1829, Xinpeng XPP055C272, AUO B116XAK01, GiantPlus GPM940B0,
      BOE NV140FHM-N49,
      Satoz SAT050AT40H12R2,
      Ko te koi LS020B1DD01D.

    • Kua tapirihia tautoko mo nga papa ARM me nga papaahi Gen1 Amazon Echo (OMAP3630-e ahu mai ana), Samsung Galaxy S III mini (GT-I8190), Allwinner Emlid Neutis, Free Computer ALL-H3-IT, PineH64 Model B, Aibretech Amlogic GX PC,
      Armada SolidRun Clearfog GTR, NXPGateworks GW59xx,
      Tolino Shine 3 eBook reader,
      Toi Whakamau COM (i.MX7ULP), SolidRun Clearfog CX/ITX me Honeycomb (LX2160A), Google Coral Edge TPU (i.MX8MQ),
      Rockchip Radxa Dalang Kaikawe, Radxa Rock Pi N10, VMARC RK3399Pro SOM
      ST Ericsson HREF520, Inforce 6640, SC7180 IDP, Atmel/Microchip AM9X60 (ARM926 SoC, Kizboxmini), ST stm32mp15, AM3703/AM3715/DM3725, ST Ericsson ab8505, Unisoc, SC9863A Qualcomm. He tautoko taapiri mo te kaiwhakahaere PCIe i whakamahia i roto i te Raspberry Pi 7180.

I taua wa ano, ko te Latin American Free Software Foundation hanga
kōwhiringa kakano tino kore utu 5.6 - Linux-pukapuka 5.6-gnu, kua whakawāteahia mai i te mārō me ngā huānga taraiwa kei roto i nga waahanga rangatira, i nga waahanga waehere ranei, ko te whānuitanga o enei mea he iti noa e te kaiwhakanao. Ko te tukunga hou ka whakakore i te uta i nga pupuhi i roto i nga taraiwa mo AMD TEE, ATH11K me Mediatek SCP. I whakahouhia te waehere horoi i roto i te AMD PSP, amdgpu me nga taraiwa hou me nga punaha iti.

Source: opennet.ru

Tāpiri i te kōrero