Hoʻokuʻu ʻo Linux kernel 6.1

Ma hope o ʻelua mahina o ka hoʻomohala ʻana, ua hōʻike ʻo Linus Torvalds i ka hoʻokuʻu ʻana o ka Linux kernel 6.1. Ma waena o nā loli kaulana loa: kākoʻo no ka hoʻomohala ʻana i nā mea hoʻokele a me nā modules i ka ʻōlelo Rust, ka hoʻololi ʻana i ka mīkini no ka hoʻoholo ʻana i nā ʻaoʻao hoʻomanaʻo i hoʻohana ʻia, kahi luna hoʻomanaʻo kūikawā no nā papahana BPF, kahi ʻōnaehana no ka ʻike ʻana i nā pilikia hoʻomanaʻo KMSAN, ka KCFI (Kernelk Control). -Flow Integrity) ka mīkini pale, ka hoʻokomo ʻana i ka lāʻau hoʻolālā Maple.

ʻO ka mana hou he 15115 hoʻoponopono mai nā mea hoʻomohala 2139, ʻo ka nui o ka patch he 51 MB, ʻo ia ka mea ma kahi o 2 mau manawa liʻiliʻi ma mua o ka nui o nā patches mai nā kernels 6.0 a me 5.19. Ua hoʻololi nā hoʻololi i nā faila 13165, 716247 laina o nā code i hoʻohui ʻia, a ua holoi ʻia nā laina 304560. Ma kahi o 45% o nā hoʻololi a pau i hoʻokomo ʻia ma 6.1 e pili ana i nā mea hoʻokele, ma kahi o 14% o nā hoʻololi e pili ana i ka hoʻonui ʻana i nā code kikoʻī i nā hale hana hardware, 14% pili i ka waihona pūnaewele, 3% pili i nā ʻōnaehana faila, a me 3% pili i nā subsystem kernel kūloko.

ʻO nā hana hou ma ka kernel 6.1:

  • Nā lawelawe hoʻomanaʻo a me nā ʻōnaehana
    • Hoʻohui i ka hiki ke hoʻohana iā Rust ma ke ʻano he ʻōlelo lua no ka hoʻomohala ʻana i nā mea hoʻokele a me nā modula kernel. ʻO ke kumu nui o ke kākoʻo ʻana iā Rust ʻo ia ka maʻalahi o ka kākau ʻana i nā mea hoʻokele pono palekana a me ka maikaʻi ma o ka hōʻemi ʻana i ka hiki ke hana hewa i ka wā e hana ai me ka hoʻomanaʻo. Hoʻopau ʻia ke kākoʻo Rust ma ke ʻano maʻamau a ʻaʻole i hopena i ka hoʻokomo ʻia ʻana o Rust ma ke ʻano he hilinaʻi kūkulu kernel pono. Ua hoʻohana ʻia ka kernel i kahi ʻano liʻiliʻi, wehe ʻia o nā pā, i hoʻemi ʻia mai ka 40 a hiki i ka 13 tausani laina o ke code a hāʻawi wale i ka palena liʻiliʻi e pono ai, lawa no ke kūkulu ʻana i kahi module kernel maʻalahi i kākau ʻia ma ka ʻōlelo Rust. I ka wā e hiki mai ana, ua hoʻolālā ʻia e hoʻonui lohi i ka hana i kēia manawa, e hoʻololi i nā hoʻololi ʻē aʻe mai ka lālā Rust-for-Linux. Ma ke ʻano like, hoʻomohala ʻia nā papahana e hoʻohana i nā ʻōnaehana i manaʻo ʻia e hoʻomohala i nā mea hoʻokele no nā drive NVMe, ka protocol network 9p a me ka Apple M1 GPU ma ka ʻōlelo Rust.
    • No nā ʻōnaehana e pili ana i ka AArch64, RISC-V a me LoongArch architecture me EFI, ua hoʻokō ʻia ka hiki ke hoʻouka pololei i nā kiʻi kernel i hoʻopaʻa ʻia. Hoʻohui ʻia nā mea lawelawe no ka hoʻouka ʻana, ka holo ʻana a me ka wehe ʻana i nā kiʻi kernel, i kāhea pololei ʻia mai EFI zboot. Ua hoʻohui pū ʻia nā mea lawelawe no ka hoʻokomo ʻana a me ka holoi ʻana i nā protocol mai ka ʻikepili protocol EFI. Ma mua, ua lawe ʻia ka wehe ʻana e kahi bootloader ʻokoʻa, akā i kēia manawa hiki ke hana ʻia e kahi mea hoʻohana i ka kernel ponoʻī - ua hoʻokumu ʻia ke kiʻi kernel ma ke ʻano he noi EFI.
    • Aia ka haku mele i ʻāpana o nā ʻāpana me ka hoʻokō ʻana i kahi hiʻohiʻona hoʻomanaʻo hoʻomanaʻo multi-level, e hiki ai iā ʻoe ke hoʻokaʻawale i nā waihona hoʻomanaʻo me nā ʻano hana like ʻole. No ka laʻana, hiki ke mālama ʻia nā ʻaoʻao i hoʻohana nui ʻia i ka hoʻomanaʻo wikiwiki loa, ʻoiai ʻo nā ʻaoʻao kakaʻikahi i hoʻohana ʻia e mālama ʻia ma ka hoʻomanaʻo lohi. Hoʻokomo ʻo Kernel 6.1 i kahi mīkini no ka hoʻoholo ʻana i kahi o nā ʻaoʻao i hoʻohana nui ʻia i ka hoʻomanaʻo lohi i hiki ke hoʻonui ʻia i ka hoʻomanaʻo wikiwiki, a hoʻolauna pū i kahi manaʻo nui o nā pae hoʻomanaʻo a me kā lākou hana pili.
    • Loaʻa iā ia ka mīkini MGLRU (Multi-Generational LRU), kahi e pani ai i ka LRU kahiko (Least Recently Used) hoʻokō ma muli o ʻelua queues me kahi hoʻolālā multi-stage e ʻoi aku ka maikaʻi o ka hoʻoholo ʻana i nā ʻaoʻao hoʻomanaʻo i hoʻohana maoli ʻia a hiki ke kiola ʻia i waho. ka ʻāpana hoʻololi.
    • Hoʻohui ʻia ke kākoʻo no ka hoʻolālā ʻikepili "lāʻau maple" i manaʻo ʻia e nā ʻenekini Oracle, kahi i hoʻonoho ʻia ma ke ʻano he mea hoʻololi ʻoi aku ka maikaʻi no ke ʻano "lāʻau ʻulaʻula-ʻeleʻele". ʻO ka lāʻau Maple kahi ʻano like ʻole o ka lāʻau B e kākoʻo ana i ka helu helu ʻana a ua hoʻolālā ʻia e hoʻohana pono i ka cache o nā kaʻina hana hou. Ua hoʻoneʻe ʻia kekahi mau ʻōnaehana hoʻomanaʻo hoʻomanaʻo i ka lāʻau maple, i loaʻa ka hopena maikaʻi i kā lākou hana. I ka wā e hiki mai ana, hiki ke hoʻohana ʻia ka lāʻau maple e hoʻokō i ka laka ākea.
    • ʻO ka hiki ke hana i nā polokalamu BPF "hoʻopau" i hoʻolālā kūikawā ʻia e hoʻomaka i kahi pani ulia pōpilikia ma o ke kelepona crash_kexec() ua hoʻohui ʻia i ka subsystem BPF. Pono paha ia mau polokalamu BPF no ka hoʻopau ʻana i nā kumu e hoʻomaka ai i ka hana ʻana i kahi hoʻolei pōʻino i kekahi manawa. No ke komo ʻana i nā hana hoʻopōʻino i ka wā e hoʻouka ai i kahi polokalamu BPF, pono ʻoe e kuhikuhi i ka hae BPF_F_DESTRUCTIVE, hoʻā i ka sysctl kernel.destructive_bpf_enabled, a loaʻa iā ʻoe nā kuleana CAP_SYS_BOOT.
    • No nā polokalamu BPF, hiki ke helu i nā mea cgroup, a me ka helu ʻana i nā kumuwaiwai (faila, vma, kaʻina hana, a me nā mea ʻē aʻe) o kahi pae kikoʻī a i ʻole hana. Ua hoʻokō ʻia kahi ʻano palapala ʻāina hou no ka hana ʻana i nā pale apo mea hoʻohana.
    • Hoʻohui i kahi kelepona kūikawā no ka hoʻokaʻawale hoʻomanaʻo i nā polokalamu BPF (memory allocator), kahi e hāʻawi ai i ka hoʻokaʻawale hoʻomanaʻo palekana ma ka pōʻaiapili BPF ma mua o ka kmalloc maʻamau ().
    • Ua hoʻohuiʻia ka hapa mua o nā hoʻololi, e hāʻawi ana i ka hiki ke hana i nā mea hoʻokele no nā mea hoʻokomo me ka HID (Human Interface Device), i hoʻokōʻia ma keʻano o nā polokalamu BPF.
    • Ua wehe loa ka kernel i ke code no ke kākoʻo ʻana i ka format file executable a.out, i hoʻopau ʻia i ka hoʻokuʻu ʻana 5.1 a ua pio ʻia no nā hale kiʻi nui mai nā mana 5.18 a me 5.19. Ua hoʻopau ʻia ke ʻano a.out ma nā ʻōnaehana Linux, a ʻaʻole kākoʻo ʻia ka hana ʻana o nā faila a.out e nā mea hana hou i nā hoʻonohonoho Linux paʻamau. Hiki ke hoʻokō piha ʻia ka mea hoʻoili no nā faila a.out ma kahi o ka mea hoʻohana.
    • No nā ʻōnaehana e pili ana i ka LoongArch instruction set architecture i hoʻohana ʻia i ka Loongson 3 5000 processors a me ka hoʻokō ʻana i ka RISC ISA hou, e like me MIPS a me RISC-V, kākoʻo i nā hanana ana hana (perf events), kexec, kdump a me BPF JIT compilation. .
    • Hāʻawi ka io_uring asynchronous I/O i ke ʻano hou, IORING_SETUP_DEFER_TASKRUN, ka mea e hiki ai ke hoʻopaneʻe ʻia ka hana e pili ana i ke apo puʻupuʻu a hiki i ka manawa i noi ʻia ai kahi noi noi, hiki ke hoʻohana ʻia no ka hana pūʻulu a pale i nā pilikia latency ma muli o ka preemption. manawa hewa.
    • Hāʻawi ʻia nā kaʻina hana ma kahi o ka mea hoʻohana i ka hiki ke hoʻomaka i ka hoʻololi ʻana i kahi ʻano o nā ʻaoʻao hoʻomanaʻo maʻamau i kahi pūʻulu o nā ʻaoʻao hoʻomanaʻo nui (Transparent Huge-Pages).
    • Hoʻohui ʻia ka hoʻokō ʻana o ka mea /dev/userfaultfd, e hiki ai ke komo i ka hana o ka userfaultfd() kelepona ʻōnaehana me ka hoʻohana ʻana i nā kuleana komo i ka FS. ʻO ka hana userfaultfd hiki iā ʻoe ke hana i nā mea hoʻohana no ke komo ʻana i nā ʻaoʻao hoʻomanaʻo i hoʻokaʻawale ʻole ʻia (nā ʻaoʻao hewa) ma kahi o ka mea hoʻohana.
    • Ua hoʻonui ʻia nā koi no ka mana o ka pono GNU Make - ʻoi aku ka liʻiliʻi o ka mana 3.82 i kēia manawa no ke kūkulu ʻana i ka kernel.
  • Subsystem disk, I/O a me nā ʻōnaehana waihona
    • Ua hoʻokō ʻia nā loiloi hana nui i ka ʻōnaehana faila Btrfs; ma waena o nā mea ʻē aʻe, ua hoʻonui ʻia ka hana o ka FIEMAP ioctl call e nā kauoha o ka nui. Hoʻohui ʻia ke kākoʻo no nā palapala asynchronous buffered no nā noi e hoʻohana ana i ka io_uring. Hoʻohui i ke kākoʻo no nā faila i pale ʻia me ka fs-verity i ka hana "hoʻouna".
    • Ua hoʻohui ka ʻōnaehana faila ext4 i nā loiloi hana e pili ana i ka mālama ʻana i ka puke pai a me ka hana heluhelu wale nō.
    • ʻO ka ʻōnaehana waihona EROFS (Enhanced Read-Only File System), i hoʻolālā ʻia no ka hoʻohana ʻana i nā ʻāpana i hiki ke loaʻa i ke ʻano heluhelu wale nō, hoʻokō i ka hiki ke kaʻana like i ka ʻikepili i kope ʻia i nā ʻōnaehana faila like ʻole.
    • Ua hoʻohui ʻia ke kelepona ʻōnaehana statx () e hōʻike i ka ʻike e pili ana inā hiki ke hoʻopili ʻia ka I/O pololei i kahi faila.
    • Ua hoʻohui ʻia ke kākoʻo no ka hana ʻana i nā faila pōkole me ka hae O_TMFILE i ka subsystem FUSE (Filesystems in User Space).
  • Virtualization a me ka palekana
    • Ua hoʻololi ʻia ka hoʻokō ʻana o ka CFI (Control Flow Integrity), me ka hoʻohui ʻana i nā loiloi ma mua o kēlā me kēia kelepona pololei ʻole o kahi hana e ʻike ai i kekahi mau ʻano o ka ʻano i wehewehe ʻole ʻia e hiki ke alakaʻi i ka uhaki ʻana i ke kauoha hoʻokō maʻamau (control flow) ma ke ʻano he ka hopena o ka hoʻohana ʻana i nā hana e hoʻololi i nā kuhikuhi i nā hana i mālama ʻia i ka hoʻomanaʻo. ʻO ka hoʻokō maʻamau o CFI mai ka papahana LLVM ua hoʻololi ʻia e kahi koho e pili ana i ka hoʻohana ʻana iā Clang, akā hoʻololi kūikawā ʻia e pale i nā subsystem haʻahaʻa a me nā kernels ʻōnaehana hana. Ma LLVM, e hāʻawi ʻia kahi hoʻokō hou i ka hoʻokuʻu Clang 16 a hiki ke hoʻohana ʻia me ke koho "-fsanitize=kcfi". ʻO ka ʻokoʻa koʻikoʻi me ka hoʻokō hou ʻana, ʻaʻole ia i nakinaki ʻia i ka link-time optimizations (LTO) a ʻaʻole i hopena i nā kuhikuhi hana e pani ʻia e nā loulou i ka papaʻaina lele.
    • No nā modula LSM (Linux Security Module), hiki ke hana i nā mea hoʻokele e hoʻopili i nā hana e hana i nā inoa inoa.
    • Hāʻawi ʻia nā mea hana no ka hōʻoia ʻana i nā pūlima kikohoʻe PKCS#7 ma nā papahana BPF.
    • Ua hoʻihoʻi ʻia ka hiki ke wehe i ka mode non-blocking (O_NONBLOCK), i wehe ʻole ʻia ma ka kernel 5.6, i /dev/random.
    • Ma nā ʻōnaehana me ka hoʻolālā x86, ua hoʻohui ʻia kahi ʻōlelo aʻo i ka hihia o ka palapala ʻana i nā ʻaoʻao hoʻomanaʻo e nā subsystem kernel e ʻae i ka hoʻokō a me ke kākau ʻana. I ka wā e hiki mai ana, ke noʻonoʻo ʻia nei ka hiki ke hoʻopaʻa loa i ia palapala hoʻomanaʻo.
    • Hoʻohui ʻia ʻo KMSAN (Kernel Memory Sanitizer) debug mechanical e ʻike i ka hoʻohana ʻana i ka hoʻomanaʻo uninitialized i loko o ka kernel, a me nā leaks hoʻomanaʻo uninitialized ma waena o nā wahi mea hoʻohana a me nā polokalamu.
    • Ua hoʻomaikaʻi ʻia i ka crypto-secure CRNG pseudo-random number generator i hoʻohana ʻia ma ke kelepona getrandom. Ua hoʻomākaukau ʻia nā hoʻololi e Jason A. Donenfeld, ka mea kākau o VPN WireGuard, a ke manaʻo nei e hoʻomaikaʻi i ka palekana o ka pseudo-random integer extraction.
  • Pūnaehana pūnaewele
    • Hāʻawi ka TCP stack i ka hiki (disabled by default) e hoʻohana i nā papa hash socket no kēlā me kēia inoa inoa, e hoʻomaikaʻi ana i ka hana ma nā ʻōnaehana me ka nui o nā inoa inoa.
    • Wehe ʻia ke code e kākoʻo i ka protocol DECnet hoʻoilina. Ua waiho ʻia nā stubs API no nā mea hoʻohana e hoʻohana i ka DECnet e hui pū ʻia, akā ʻaʻole hiki i kēia mau noi ke hoʻopili i ka pūnaewele.
    • Hoʻopaʻa ʻia ka protocol netlink.
  • Kākoʻo
    • Ua hoʻohui ka mea hoʻokele amdgpu i ke kākoʻo no ka DSC (Display Stream Compression) i mua no ka hoʻopili ʻana i ka ʻikepili me ka ʻole i ka wā e hoʻololi ai i ka ʻike me nā pale e kākoʻo ana i nā hoʻonā kiʻekiʻe loa. Ke hoʻomau nei ka hana i ke kākoʻo no ka AMD RDNA3 (RX 7000) a me CDNA (Instinct). Kākoʻo hoʻohui ʻia no DCN 3.2, SMU 13.x, NBIO 7.7, GC 11.x, PSP 13.x, SDMA 6.x a me GMC 11.x IP mau mea. Hāʻawi ka mea hoʻokele amdkfd (no nā AMD GPU ʻokoʻa e like me Polaris) i ke kākoʻo no GFX 11.0.3.
    • Aia ka mea hoʻokele i915 (Intel) i ke kākoʻo no Meteor Lake GPU. Kākoʻo ʻo Meteor Lake a me nā GPU hou i ka DP 2.0 (DisplayPort). Hoʻohui ʻia nā mea hōʻike no nā kāleka wikiō e pili ana i ka microarchitecture ʻo Alder Lake S.
    • Hoʻohui i ke kākoʻo no nā subsystem leo i hoʻokō ʻia ma Apple Silicon, Intel SkyLake a me Intel KabyLake processors. Kākoʻo ka mea hoʻokele leo CS35L41 HDA i ke ʻano moe. Hoʻohui ʻia ke kākoʻo ASoC (ALSA System on Chip) no nā ʻāpana leo hoʻohui Apple Silicon, AMD Rembrant DSPs, AMD Pink Sardine ACP 6.2, Everest ES8326, Intel Sky Lake a me Kaby Lake, Mediatek MT8186, NXP i.MX8ULP DSPs, Qualcomm SC8280XP, SM8250, SM8450 a me Texas Instruments SRC4392
    • Kākoʻo kākoʻo hou ʻia no nā panela LCD Samsung LTL101AL01, B120XAN01.0, R140NWF5 RH, Densitron DMT028VGHMCMI-1A TFT, AUO B133UAN02.1, IVO M133NW4J-R3, Innolux N120NWF1 RH, Densitron DMT116VGHMCMI-01.6A TFT, AUO B116UAN21, IVO M116NW2J-R116, Innolux N1NWF0800 BEA9AUXNUMXWH BEAXNUMX. , INX NXNUMXBCA- EAXNUMX , INX NXNUMXBCN-EAXNUMX, Multi-Inno Technology MIXNUMXFT-XNUMX.
    • Hoʻohui i kākoʻo no nā mea hoʻokele AHCI SATA i hoʻohana ʻia ma ka Baikal-T1 SoC.
    • Hoʻohui ʻia ke kākoʻo no nā chips Bluetooth MediaTek MT7921, Intel Magnetor (CNVi, Integrated Connectivity), Realtek RTL8852C, RTW8852AE a me RTL8761BUV (Edimax BT-8500).
    • Ua hoʻohui ka mea hoʻokele ath11k no nā modula uila Qualcomm i ke kākoʻo no ka nānā ʻana i ka spectral i ka laulā 160 MHz, hoʻokō i ka NAPI multi-threaded, a hoʻomaikaʻi i ke kākoʻo no Qualcomm WCN6750 Wi-Fi chips.
    • Hoʻohui i nā mea hoʻokele no PinePhone keyboard, InterTouch touchpads (ThinkPad P1 G3), X-Box Adaptive Controller, PhoenixRC Flight Controller, VRC-2 Car Controller, DualSense Edge Controller, IBM Operation Panel, XBOX One Elite remotes, papa XP-PEN Deco Pro S a me Intuos Pro Small (PTH-460).
    • Hoʻohui ʻia ka mea hoʻokele no Aspeed HACE (Hash and Crypto Engine) cryptographic accelerators.
    • Kākoʻo hoʻohui ʻia no nā mea hoʻokele Thunderbolt/USB4 Intel Meteor Lake.
    • Hoʻohui i kākoʻo no Sony Xperia 1 IV, Samsung Galaxy E5, E7 a me Grand Max, Pine64 Pinephone Pro smartphones.
    • Kākoʻo kākoʻo no ARM SoC a me nā papa: AMD DaytonaX, Mediatek MT8186, Rockchips RK3399 a me RK3566, TI AM62A, NXP i.MX8DXL, Renesas R-Car H3Ne-1.7G, Qualcomm IPQ8064-v2.0, IPQ8062, IPQ8065, IPQ8, IPQ8195. BL i.MX4MM OSM-S, MT4 (Acer Tomato), Radxa ROCK 1C+, NanoPi RXNUMXS Enterprise Edition, JetHome JetHub DXNUMXp. Nā mea hoʻokele hou no SoC Samsung, Mediatek, Renesas, Tegra, Qualcomm, Broadcom a me NXP.

I ka manawa like, ua hoʻokumu ka Latin American Free Software Foundation i kahi mana o ka kernel manuahi 6.1 - Linux-libre 6.1-gnu, i hoʻomaʻemaʻe ʻia i nā mea o ka firmware a me nā mea hoʻokele i loaʻa nā ʻāpana manuahi ʻole a i ʻole nā ​​​​ʻāpana o ke code, ʻo ia ka laulā. kaupalena ʻia e ka mea hana. Hoʻomaʻemaʻe ka hoʻokuʻu hou i ka mea hoʻokele rtw8852b hou a me nā faila DTS no nā ʻano Qualcomm a me MediaTek SoCs me nā mea hana e pili ana i ka hoʻolālā AArch64. Hōʻano hou ʻia ke code hoʻomaʻemaʻe blob i nā mea hoʻokele a me nā subsystems amdgpu, i915, brcmfmac, r8188eu, rtw8852c, Intel ACPI. Ua hoʻoponopono ʻia ka hoʻomaʻemaʻe ʻana i nā mea hoʻokele kahiko tm6000, cpia2 v4l, sp8870, av7110.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka