Linux 6.1 kernel kuburitswa

Mushure memwedzi miviri yebudiriro, Linus Torvalds akapa kuburitswa kweLinux kernel 6.1. Pakati pekuchinja kwakanyanya: tsigiro yekuvandudzwa kwevatyairi uye mamodule muRust mutauro, yemazuva ano nzira yekuona yakashandiswa ndangariro mapeji, yakakosha ndangariro maneja weBPF zvirongwa, hurongwa hwekuongorora matambudziko ekurangarira KMSAN, iyo KCFI (Kernelk Control). -Flow Integrity) nzira yekudzivirira, kuiswa kweMaple maitiro emuti.

Iyo vhezheni itsva inosanganisira 15115 inogadzirisa kubva kune 2139 vanogadzira, iyo chigamba saizi i51 MB, iyo inokwana ka2 idiki pane saizi yezvigamba kubva kukernels 6.0 uye 5.19. Shanduko dzakakanganisa mafaera e13165, mitsara ye716247 yekodhi yakawedzerwa, uye mitsara ye304560 yakabviswa. Inenge 45% yekuchinja kwese kwakaunzwa mu6.1 kune hukama nevatyairi vemidziyo, ingangoita gumi neshanu muzana yeshanduko ine chekuita nekuvandudza kodhi yakanangana nehardware architecture, 14% ine hukama netiweki stack, 14% ine hukama nemafaira masisitimu, uye 3% zvine hukama nemukati kernel subsystems.

Makiyi matsva mu kernel 6.1:

  • Memory uye system masevhisi
    • Yakawedzera kugona kushandisa Rust semutauro wechipiri wekugadzira madhiraivha uye kernel module. Chikonzero chikuru chekutsigira Rust kuita kuti zvive nyore kunyora zvakachengeteka uye zvemhando yepamusoro madhiraivha emudziyo nekudzikisa mukana wekuita zvikanganiso kana uchishanda nendangariro. Rutsigiro rwerust runodzimwa nekusarudzika uye hazviite kuti Rust ibatanidzwe sezvinodiwa kernel kuvaka kutsamira. Iyo kernel kusvika ikozvino yatora shoma, yakabviswa-pasi shanduro yezvigamba, iyo yakaderedzwa kubva ku40 kusvika ku13 zviuru mitsetse yekodhi uye inopa chete inodiwa shoma, yakakwana kuvaka iri nyore kernel module yakanyorwa mumutauro Rust. Mune ramangwana, inorongwa kuwedzera zvishoma nezvishoma kushanda kuripo, kuendesa dzimwe shanduko kubva kuRust-for-Linux bazi. Mukufanana, mapurojekiti ari kugadzirwa kuti ashandise zvivakwa zvakarongwa kugadzira madhiraivha eNVMe drive, iyo 9p network protocol uye Apple M1 GPU mumutauro weRust.
    • Kune masisitimu akavakirwa paAArch64, RISC-V uye LoongArch architecture ane EFI, kugona kurodha zvakananga kuomeswa kernel mifananidzo kwaitwa. Yakawedzera vabati vekutakura, kumhanya uye kuburitsa kernel mifananidzo, inodanwa zvakananga kubva kuEFI zboot. Mabatiro ekuisa nekudzima maprotocol kubva kuEFI protocol database akawedzerwawo. Pakutanga, kusunungura kwaiitwa neakasiyana bootloader, asi ikozvino izvi zvinogona kuitwa nemubati mu kernel pachayo - iyo kernel mufananidzo unoumbwa seEFI application.
    • Iko kuumbwa kunosanganisira chikamu chezvigamba nekushandiswa kweakawanda-level memory management modhi, iyo inobvumidza iwe kuparadzanisa memory mabhangi ane akasiyana maitiro ekuita. Semuenzaniso, mapeji anonyanya kushandiswa anogona kuchengetwa mundangariro dzinokurumidza, nepo mapeji asingawanzo shandiswa anogona kuchengetwa mundangariro dzinononoka. Kernel 6.1 inosvitsa nzira yekuona kuti mapeji anoshandiswa zvakanyanya anowanikwa kupi mundangariro inononoka kuitira kuti asimudzirwe kukukurumidza ndangariro, uye inosumawo pfungwa yakajairika yememory tiers uye mashandiro avo.
    • Inosanganisira iyo MGLRU (Multi-Generational LRU) mashandiro, ayo anotsiva yekare LRU (Ishoma Ichangobva Kushandiswa) kuitiswa kwakavakirwa pamitsara miviri ine nhanho dzakawanda-nhanho inotarisisa zvirinani kuti ndeapi mapeji ekurangarira ari kushandiswa uye anogona kusundidzirwa kunze. the swap partition.
    • Yakawedzerwa tsigiro ye "maple muti" data chimiro chakakurudzirwa neOracle mainjiniya, iyo inomisikidzwa seimwe inoshanda yekutsiva iyo "mutsvuku-muti mutema" chimiro. Muti wemumepu musiyano weB-muti unotsigira huwandu indexing uye wakagadzirirwa kushandisa zvine hungwaru cache yemazuva ano processors. Mamwe mamemory management subsystems akatoendeswa kune mepu muti, izvo zvave nemhedzisiro yakanaka pakuita kwavo. Mune ramangwana, maple muti unogona kushandiswa kushandisa renji kukiya.
    • Iko kugona kugadzira "zvinoparadza" zvirongwa zveBPF zvakagadzirirwa kutanga kuvharika kwechimbichimbi kuburikidza necrash_kexec () kufona kwawedzerwa kune iyo BPF subsystem. Zvirongwa zvakadaro zveBPF zvinogona kudikanwa kuti zvigadzirise zvinangwa zvekutanga kugadzirwa kwekuparara pane imwe nguva nenguva. Kuti uwane mabasa anoparadza paunenge uchiisa chirongwa cheBPF, unofanira kudoma mureza weBPF_F_DESTRUCTIVE, shandisa sysctl kernel.destructive_bpf_enabled, uye uve neCAP_SYS_BOOT kodzero.
    • Kuzvirongwa zveBPF, zvinokwanisika kuverengera cgroup zvinhu, pamwe nekuverenga zviwanikwa (mafaira, vma, maitiro, nezvimwewo) zvetambo chaiyo kana basa. Rudzi rutsva rwemepu rwakaitwa kugadzira mushandisi ring buffers.
    • Yakawedzera kufona kwakakosha kwekugoverwa kwendangariro muzvirongwa zveBPF (memory allocator), iyo inopa yakachengeteka ndangariro kugoverwa mumamiriro eBPF pane yakajairwa kmalloc ().
    • Chikamu chekutanga cheshanduko chakabatanidzwa, ichipa kugona kugadzira vatyairi vemidziyo yekupinza ine HID (Human Interface Device) interface, inoshandiswa nenzira yeBPF zvirongwa.
    • Kernel yabvisa zvachose kodhi kutsigira a.out executable faira fomati, iyo yakadzikiswa mukuburitswa 5.1 uye yakaremara kune makuru ezvivakwa kubvira shanduro 5.18 uye 5.19. Iyo a.out fomati yakagara yakadzikiswa paLinux masisitimu, uye kugadzirwa kwea.out mafaera hakutsigirwe nemidziyo yemazuva ano mukumisikidzwa kweLinux. Iyo loader ye.out mafaira inogona kushandiswa zvachose munzvimbo yevashandisi.
    • Kune masisitimu akavakirwa paLoongArch rairo seti yezvivakwa inoshandiswa muLoongson 3 5000 processors uye kuita iyo itsva RISC ISA, yakafanana neMIPS uye RISC-V, rutsigiro rwekuita kuyerwa zviitiko (perf zviitiko), kexec, kdump uye BPF JIT kuunganidzwa kunoitwa. .
    • Iyo io_uring asynchronous I/O interface inopa modhi itsva, IORING_SETUP_DEFER_TASKRUN, iyo inobvumira basa rine chekuita nemhete kuti rimbomiswa kusvika chikumbiro chaitwa, icho chinogona kushandiswa kubatch basa uye kudzivirira nyaya dzekunonoka nekuda kwekuregererwa. nguva isiriyo.
    • Maitiro munzvimbo yemushandisi anopihwa kugona kutanga shanduko yeakajairwa mapeji endangariro kuita seti yemapeji makuru endangariro (Transparent Huge-Mapeji).
    • Yakawedzerwa kuisirwa kweiyo /dev/userfaultfd mudziyo, iyo inobvumira kuwana kwekushanda kweiyo userfaultfd () system call uchishandisa kodzero dzekuwana muFS. Iko userfaultfd kushanda kunoita kuti iwe ugadzire zvibatiso zvekuwana mapeji asina kugoverwa ndangariro (peji kukanganisa) munzvimbo yemushandisi.
    • Izvo zvinodikanwa zvevhezheni yeGNU Ita zvinoshandiswa zvakawedzerwa - ingangoita vhezheni 3.82 ikozvino inodiwa kuvaka kernel.
  • Disk Subsystem, I/O uye File Systems
    • Yakakosha kuita optimizations yakaitwa kuBtrfs faira system; pakati pezvimwe zvinhu, kuita kweFIEMAP ioctl kufona kwakawedzerwa nemirairo yehukuru. Yakawedzerwa rutsigiro rweasynchronous buffered inonyora zvekushandisa uchishandisa io_uring. Yakawedzerwa rutsigiro rwemafaira akadzivirirwa nefs-verity kune "send" mashandiro.
    • Iyo ext4 faira sisitimu yakawedzera kuita optimizations ine chekuita nekuchengetedza rejenari uye kuverenga-chete kushanda.
    • Iyo EROFS (Enhanced Read-Only File System) faira system, yakagadzirirwa kushandiswa pazvikamu zvinowanikwa mukuverenga-chete modhi, inoshandisa kugona kugovera data rakadhindwa mune akasiyana faira masisitimu.
    • Iyo statx() system yekufona yawedzerwa kuratidza ruzivo rwekuti yakananga I/O inogona kuiswa kufaira.
    • Tsigiro yekugadzira mafaira echinguvana nemureza weO_TMPFILE yawedzerwa kuFUSE (Filesystems in User Space) subsystem.
  • Virtualization uye Chengetedzo
    • Kuitwa kweiyo CFI (Control Flow Integrity) nzira yekudzivirira yakatsiviwa, ichiwedzera cheki isati yasvika imwe neimwe isina kunanga kufona kwebasa kuona mamwe maitiro asina kutsanangurwa maitiro anogona kukonzeresa kutyorwa kweyakajairwa kuuraya kurongeka (kudzora kuyerera) se mhedzisiro yekushandiswa kwezvinhu zvinoshandura zvinongedzo kumabasa akachengetwa mundangariro . Kuitwa kwakajairwa kweCFI kubva kuchirongwa cheLLVM kwakatsiviwa nesarudzo zvakare yakavakirwa pakushandiswa kweClang, asi yakagadziridzwa zvakanyanya kuchengetedza yakaderera-level subsystems uye inoshanda sisitimu kernels. MuLLVM, kuita kutsva kuchapihwa mukuburitswa kweClang 16 uye kuchagoneswa neiyo "-fsanitize=kcfi" sarudzo. Musiyano wakakosha nekushandiswa kutsva ndewekuti haina kusungirirwa ku-link-time optimizations (LTO) uye haikonzeri kuti mapoinzi ebasa atsiviwa nezvinongedzo mutafura yekusvetuka.
    • Kune LSM modules (Linux Security Module), zvinokwanisika kugadzira vanobata vanobata mashandiro kugadzira nzvimbo dzezita.
    • Zvishandiso zvinopihwa zvekusimbisa PKCS#7 masiginecha edhijitari muzvirongwa zveBPF.
    • Iko kugona kuvhura mune isiri-kuvharira modhi (O_NONBLOCK), iyo yakabviswa nekusaziva mu kernel 5.6, yakadzoserwa ku /dev/random.
    • Pane masisitimu ane x86 architecture, yambiro yakawedzerwa kana paine mepu yemapeji ekurangarira nekernel subsystems inobvumira panguva imwe chete kuita uye kunyora. Mune ramangwana, mukana wekurambidza zvachose mamepu akadaro ari kutariswa.
    • Yakawedzera KMSAN (Kernel Memory Sanitizer) kugadzirisa maitiro ekuona uninitialized ndangariro kushandiswa mu kernel, pamwe nekusaziva kukanganiswa kwendangariro kudonha pakati pemushandisi nzvimbo nemidziyo.
    • Kuvandudzwa kwakaitwa kune crypto-yakachengeteka CRNG pseudo-random nhamba jenareta inoshandiswa mukufona getrandom. Shanduko idzi dzakagadzirwa naJason A. Donenfeld, munyori weVPN WireGuard, uye dzine chinangwa chekuvandudza kuchengetedzwa kwepseudo-random integer extraction.
  • Network subsystem
    • Iyo TCP stack inopa kugona (kuremara nekusarudzika) kushandisa socket hashi matafura akasiyana kune yega yega nzvimbo yezita, iyo inovandudza mashandiro pane masisitimu ane nhamba huru yemazita.
    • Yakabviswa kodhi kutsigira nhaka DECnet protocol. Mushandisi nzvimbo API stubs anosiiwa munzvimbo kuti abvumire maapplication anoshandisa DECnet kuumbwa, asi aya maapplication haazokwanisi kubatana kune network.
    • Iyo netlink protocol yakanyorwa.
  • Zvigadzirwa
    • Mutyairi weamdgpu akawedzera tsigiro yeDSC (Display Stream Compression) kuendesa kune isingarasikike data compression paunenge uchichinjana ruzivo nemasikirini anotsigira zvakakwirira resolution. Basa rinoramba richipa rutsigiro rwe AMD RDNA3 (RX 7000) uye CDNA (Instinct) mapuratifomu. Yakawedzerwa rutsigiro rweDCN 3.2, SMU 13.x, NBIO 7.7, GC 11.x, PSP 13.x, SDMA 6.x uye GMC 11.x IP zvikamu. Iyo amdkfd mutyairi (ye discrete AMD GPUs sePolaris) inopa rutsigiro rweGFX 11.0.3.
    • Iyo i915 (Intel) mutyairi inosanganisira rutsigiro rweMeteor Lake GPU. Meteor Lake uye maGPU matsva anotsigira DP 2.0 (DisplayPort) interface. Akawedzera zviziviso zvemakadhi evhidhiyo akavakirwa paAlder Lake S microarchitecture.
    • Yakawedzerwa rutsigiro rweodhiyo subsystems inoshandiswa muApple Silicon, Intel SkyLake uye Intel KabyLake processors. Iyo CS35L41 HDA audio driver inotsigira yekurara modhi. Yakawedzerwa ASoC (ALSA System paChip) tsigiro yeakabatanidzwa audio chips Apple Silicon, AMD Rembrant DSPs, AMD Pink Sardine ACP 6.2, Everest ES8326, Intel Sky Lake uye Kaby Lake, Mediatek MT8186, NXP i.MX8ULP DSPs, Qualcomm SC8280X8250, SM8450 uye Texas Instruments SRC4392
    • Yakawedzerwa tsigiro yeLCD mapaneru Samsung LTL101AL01, B120XAN01.0, R140NWF5 RH, Densitron DMT028VGHMCMI-1A TFT, AUO B133UAN02.1, IVO M133NW4J-R3, Innolux N120ACAK 1ACU-ACA116-ACA01.6-AUO-AUO-AUO B116UAN21. 116WH M-N2, INX N116BCA- EA1 , INX N0800BCN-EA9, Multi-Inno Technology MIXNUMXFT-XNUMX.
    • Yakawedzerwa rutsigiro rweAHCI SATA controller anoshandiswa muBaikal-T1 SoC.
    • Yakawedzera tsigiro yeBluetooth machipi MediaTek MT7921, Intel Magnetor (CNVi, Integrated Connectivity), Realtek RTL8852C, RTW8852AE uye RTL8761BUV (Edimax BT-8500).
    • Iyo ath11k mutyairi weQualcomm isina waya module akawedzera tsigiro yekutarisisa kutarisisa muchikamu che160 MHz, akaiswa akawanda-akarukwa NAPI, uye nerutsigiro rwakavandudzwa rweQualcomm WCN6750 Wi-Fi chips.
    • Akawedzera madhiraivha ePinePhone 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, mapiritsi XP-PEN Deco Pro S. uye Intuos Pro Diki (PTH-460).
    • Yakawedzera mutyairi weAspeed HACE (Hash uye Crypto Injini) cryptographic accelerators.
    • Yakawedzerwa rutsigiro rweakabatanidzwa Thunderbolt/USB4 Intel Meteor Lake controllers.
    • Yakawedzerwa rutsigiro rweSony Xperia 1 IV, Samsung Galaxy E5, E7 uye Grand Max, Pine64 Pinephone Pro smartphones.
    • Yakawedzerwa rutsigiro rweARM SoC nemabhodhi: AMD DaytonaX, Mediatek MT8186, Rockchips RK3399 uye RK3566, TI AM62A, NXP i.MX8DXL, Renesas R-Car H3Ne-1.7G, Qualcomm IPQ8064-v2.0, IPQntQnt8062, IPQntQnt8065, IPQntQnt8, IPQnt8195, IPQnt4, IPQnt4, IPQnt1, IPQntXNUMX, IPQXNUMX, MXXNUMXDXL. BL i.MXXNUMXMM OSM-S, MTXNUMX (Acer Tomato), Radxa ROCK XNUMXC+, NanoPi RXNUMXS Enterprise Edition, JetHome JetHub DXNUMXp. Yakagadziridzwa madhiraivha eSoC Samsung, Mediatek, Renesas, Tegra, Qualcomm, Broadcom uye NXP.

Panguva imwecheteyo, iyo Latin America Yemahara Software Foundation yakagadzira vhezheni yemahara zvachose kernel 6.1 - Linux-libre 6.1-gnu, yakacheneswa yezvinhu zve firmware uye madhiraivha ane zvisiri zvemahara zvikamu kana zvikamu zvekodhi, chiyero chayo chiri. inoganhurirwa nemugadziri. Kuburitswa kutsva kunochenesa rtw8852b mutyairi uye DTS mafaera emhando dzakasiyana dzeQualcomm neMediaTek SoCs ine ma processors akavakirwa pane AArch64 architecture. Yakagadziridzwa blob yekuchenesa kodhi mumadhiraivha uye subsystems amdgpu, i915, brcmfmac, r8188eu, rtw8852c, Intel ACPI. Kucheneswa kwevatyairi vekare tm6000 makadhi eTV, cpia2 v4l, sp8870, av7110 yakagadziriswa.

Source: opennet.ru

Voeg