Linux Kernel tso tawm 6.3

Tom qab ob lub hlis ntawm kev txhim kho, Linus Torvalds nthuav tawm qhov tso tawm ntawm Linux ntsiav 6.3. Ntawm cov kev hloov pauv tseem ceeb tshaj plaws: kev ntxuav cov cuab yeej cuab tam ARM platform thiab cov duab tsav tsheb, txuas ntxiv kev txhawb nqa ntawm Rust lus, hwnoise utility, kev txhawb nqa rau cov qauv ntoo liab-dub hauv BPF, BIG TCP hom rau IPv4, built-in Dhrystone benchmark, muaj peev xwm ua tsis taus Kev ua tiav hauv memfd, txhawb kev tsim HID tsav tsheb siv BPF, kev hloov pauv tau ua rau Btrfs kom txo qis kev tawg ntawm pawg thaiv.

Tus tshiab version suav nrog 15637 kho los ntawm 2055 tus tsim tawm; thaj loj - 76 MB (hloov cuam tshuam 14296 cov ntaub ntawv, 1023183 kab ntawm cov lej tau ntxiv, 883103 kab raug tshem tawm). Los ntawm kev sib piv, yav dhau los version muaj 16843 kho los ntawm 2178 tus tsim tawm; thaj loj yog 62 MB. Txog 39% ntawm tag nrho cov kev hloov pauv tau qhia hauv 6.3 kernel yog cuam tshuam nrog cov cuab yeej tsav tsheb, kwv yees li 15% ntawm cov kev hloov pauv cuam tshuam txog kev hloov kho cov cai tshwj xeeb rau cov khoom siv kho vajtse, 10% muaj feem cuam tshuam nrog pawg network, 5% cuam tshuam nrog cov ntaub ntawv kaw lus, thiab 3% muaj feem cuam tshuam rau hauv cov ntsiav subsystems.

Kev tsim kho tshiab tseem ceeb hauv kernel 6.3:

  • Kev pabcuam nco thiab system
    • Kev ntxuav tseem ceeb ntawm cov cai cuam tshuam nrog cov laus thiab tsis siv ARM boards tau ua tiav, uas ua rau nws muaj peev xwm txo qhov loj ntawm cov lej code los ntawm 150 txhiab kab. Ntau tshaj 40 lub qub ARM platforms tau raug tshem tawm.
    • Lub peev xwm los tsim cov tsav tsheb rau cov khoom siv nkag nrog HID (Human Interface Device) interface, tau ua raws li BPF cov kev pab cuam, tau ua tiav.
    • Kev hloov pauv los ntawm Rust-for-Linux ceg ntawm kev ua haujlwm ntxiv ntsig txog kev siv cov lus Rust ua hom lus thib ob rau kev tsim cov tsav tsheb thiab cov kernel modules tau txuas ntxiv mus. Kev them nyiaj yug xeb tsis tau qhib los ntawm lub neej ntawd, thiab tsis ua rau Rust tau suav nrog raws li qhov yuav tsum tau ua kom muaj kev vam khom. Cov kev ua haujlwm muaj nyob rau hauv kev tshaj tawm yav dhau los tau nthuav dav los txhawb cov hom Arc (kev siv cov taw qhia nrog suav suav), ScopeGuard (ntxuav thaum tawm mus) thiab ForeignOwnable (muab kev txav ntawm pointers ntawm C thiab Rust code). Lub 'qiv' module (hom 'Noj' thiab qhov zoo 'ToOwned') tau raug tshem tawm ntawm pob 'alloc'. Nws raug sau tseg tias lub xeev ntawm Rust kev txhawb nqa hauv cov ntsiav twb nyob ze rau kev pib lees txais thawj cov qauv sau hauv Rust rau hauv cov ntsiav.
    • Tus neeg siv hom Linux (khiav lub ntsiav raws li tus neeg siv txheej txheem) ntawm x86-64 systems siv kev txhawb nqa rau cov lej sau ua lus Rust. Ntxiv kev txhawb nqa rau lub tsev neeg siv hom Linux siv clang nrog txuas-lub sij hawm optimizations (LTO) enabled.
    • Ntxiv hwnoise utility los taug qab kev ncua los ntawm kev kho vajtse. Kev sib txawv hauv lub sijhawm ua haujlwm ntawm kev ua haujlwm (jitter) yog txiav txim siab thaum kev cuam tshuam kev ua haujlwm tsis ua haujlwm, dhau ib microsecond rau 10 feeb ntawm kev suav.
    • Ntxiv cov ntsiav module uas siv Dhrystone benchmark, uas tuaj yeem siv los ntsuas CPU kev ua tau zoo hauv kev teeb tsa yam tsis muaj cov neeg siv khoom siv (piv txwv li, ntawm qhov chaw nres nkoj rau SoCs tshiab uas tsuas yog siv cov khoom thauj khoom).
    • Ntxiv kernel hais kom ua kab parameter "cgroup.memory = nobpf", uas cuam tshuam kev nco noj nyiaj txiag rau BPF cov kev pab cuam, uas tuaj yeem pab tau rau cov tshuab nrog cov thawv cais.
    • Rau BPF cov kev pab cuam, kev siv cov ntaub ntawv ntoo liab-dub yog npaj, uas siv kfunc + kptr (bpf_rbtree_add, bpf_rbtree_remove, bpf_rbtree_first) es tsis txhob ntxiv cov hom phiaj tshiab.
    • Cov txheej txheem ntawm restartable sequences (rseq, restartable sequences) tau ntxiv lub peev xwm mus rau hloov mus rau parallel execution identifiers (memory-daim ntawv qhia concurrency ID) rau cov txheej txheem, txheeb xyuas nrog CPU tooj. Rseq muab ib txoj hauv kev los ua haujlwm sai sai atomically, uas, yog tias cuam tshuam los ntawm lwm cov xov, raug ntxuav thiab sim dua.
    • ARM processors txhawb SME 2 (Scalable Matrix Extension) cov lus qhia.
    • Rau s390x thiab RISC-V RV64 architectures, kev txhawb nqa rau "BPF trampoline" mechanism tau siv, uas tso cai rau txo qis nyiaj siv ua haujlwm thaum xa xov ntawm cov ntsiav thiab BPF cov kev pab cuam.
    • Ntawm cov txheej txheem nrog cov txheej txheem raws li RISC-V architecture, kev siv "ZBB" cov lus qhia yog siv los ua kom nrawm txoj haujlwm.
    • Rau cov txheej txheem raws li LoongArch cov lus qhia teeb tsa kev teeb tsa (siv hauv Loongson 3 5000 processors thiab siv RISC ISA tshiab, zoo ib yam li MIPS thiab RISC-V), kev txhawb nqa rau kernel chaw nyob qhov chaw randomization (KASLR), kev hloov pauv hauv kernel nco qhov chaw (txog chaw nyob. ), cov ntsiab lus kho vajtse yog siv nres thiab kprobe mechanism.
    • Lub DAMOS (Data Access Monitoring-based Operation Schemes) mechanism, uas tso cai rau koj kom tso lub cim xeeb dawb raws li qhov zaus ntawm lub cim xeeb nkag, txhawb cov ntxaij lim dej kom tshem tawm qee qhov chaw nco los ntawm kev ua hauv DAMOS.
    • Nolibc tus qauv C lub tsev qiv ntawv tsawg tshaj plaws muab kev txhawb nqa rau s390 architecture thiab Arm Thumb1 cov lus qhia teeb tsa (ntxiv rau kev txhawb nqa rau ARM, AArch64, i386, x86_64, RISC-V thiab MIPS).
    • Objtool tau ua tiav rau cov kev sib dhos ua kom ceev ceev thiab txo lub hom phiaj ua haujlwm thaum sib dhos (thaum tsis muaj teeb meem ntawm cov txheej txheem ntawm cov txheej txheem nrog 32 GB ntawm RAM).
    • Kev them nyiaj yug rau kernel los ua ke los ntawm Intel ICC compiler tau raug txiav tawm, uas tau ua haujlwm tsis ntev los no thiab tsis muaj leej twg tau qhia txog kev xav kho nws.
  • Disk subsystem, I / O thiab cov ntaub ntawv systems
    • tmpfs siv kev txhawb nqa rau daim ntawv teev cov neeg siv IDs ntawm mounted file systems, siv los phim cov ntaub ntawv ntawm ib tus neeg siv tshwj xeeb ntawm kev faib txawv teb chaws nrog lwm tus neeg siv ntawm cov kab ke tam sim no.
    • Hauv Btrfs, txhawm rau txo qhov kev tawg ntawm cov pab pawg ntawm cov blocks, cov ntu tau faib los ntawm qhov loj me thaum faib cov blocks, i.e. ib pawg ntawm cov blocks tam sim no txwv rau me me (txog 128KB), nruab nrab (txog 8 MB) thiab ntau qhov loj. Kev siv raid56 tau rov ua dua. Cov cai rau kev txheeb xyuas cov checksums tau rov ua haujlwm dua. Kev ua tau zoo ntawm kev ua tau zoo tau ua kom nrawm rau kev xa tawm mus txog 10 zaug los ntawm caching utime rau cov npe thiab ua tiav cov lus txib tsuas yog thaum tsim nyog. Fiemap kev ua haujlwm tam sim no yog peb zaug sai dua los ntawm kev hla rov qab xyuas cov ntaub ntawv sib koom (snapshots). Kev ua haujlwm nrog metadata tau nrawm dua li 10% los ntawm kev ua kom zoo rau kev tshawb nrhiav cov yuam sij hauv b-ntoo qauv.
    • Qhov kev ua tau zoo ntawm ext4 cov ntaub ntawv tau raug txhim kho los ntawm kev tso cai rau ntau yam txheej txheem rau ib txhij ua haujlwm ncaj qha I / O ntawm cov blocks ua ntej siv cov sib koom inode locks es tsis txhob siv cov xauv tshwj xeeb.
    • Hauv f2fs, ua haujlwm tau ua los txhim kho cov lej nyeem tau. Kev daws teeb meem tseem ceeb ntsig txog atomic sau thiab qhov tshiab cache.
    • Lub EROFS (Enhanced Read-Only File System) cov ntaub ntawv, tsim los siv rau hauv cov ntawv nyeem nkaus xwb, siv lub peev xwm los khi decompression ua haujlwm ntawm cov ntaub ntawv compressed rau CPU kom txo qis latency thaum nkag mus rau cov ntaub ntawv.
    • BFQ I / O lub sijhawm teem sijhawm tau ntxiv kev txhawb nqa rau kev ua haujlwm siab nrawm nrawm, xws li cov uas siv ntau lub taub hau sib cais (Multi Actuators).
    • Kev them nyiaj yug rau cov ntaub ntawv encryption siv AES-SHA2 algorithm tau ntxiv rau NFS tus neeg siv khoom thiab kev siv server.
    • Kev them nyiaj yug rau cov lus nug nthuav dav tau ntxiv rau FUSE (Filesystems In User Space) subsystem, tso cai rau cov ntaub ntawv ntxiv muab tso rau hauv cov lus nug. Raws li qhov tshwj xeeb no, nws muaj peev xwm ntxiv cov cim qhia rau FS qhov kev thov, uas yuav tsum tau coj mus rau hauv tus account cov cai nkag thaum tsim cov khoom hauv FS (tsim, mkdir, symlink, mknod).
  • Virtualization thiab Kev Ruaj Ntseg
    • KVM hypervisor rau x86 tshuab tau ntxiv kev txhawb nqa rau Hyper-V txuas ntxiv hypercalls thiab muab lawv xa mus rau tus neeg tuav haujlwm khiav hauv tus tswv tsev ib puag ncig hauv cov neeg siv chaw. Qhov kev hloov pauv tau ua rau nws muaj peev xwm los siv kev txhawb nqa rau lub zes tso tawm ntawm Hyper-V hypervisor.
    • KVM ua kom yooj yim dua los txwv cov qhua nkag mus rau PMU (Performance Monitor Unit) cov xwm txheej ntsig txog kev ntsuas kev ua tau zoo.
    • Lub tshuab memfd, uas tso cai rau koj txheeb xyuas thaj chaw nco los ntawm cov ntaub ntawv piav qhia hloov pauv ntawm cov txheej txheem, tau ntxiv lub peev xwm los tsim cov cheeb tsam uas txwv kev ua txhaum cai (non-executable memfd) thiab nws tsis tuaj yeem teeb tsa txoj cai tua yav tom ntej .
    • Kev ua haujlwm prctl tshiab PR_SET_MDWE tau ntxiv uas thaiv kev sim ua kom lub cim xeeb nkag tau cov cai uas ib txhij tso cai sau ntawv thiab ua tiav.
    • Kev tiv thaiv kev tawm tsam Spectre chav kawm tau ntxiv thiab ua haujlwm los ntawm lub neej ntawd, raws li qhov tsis siv neeg IBRS (Enhanced Indirect Branch Restricted Speculation) hom tau npaj rau hauv AMD Zen 4 processors, uas tso cai rau kev hloov pauv thiab cuam tshuam kev ua tiav ntawm cov lus qhia thaum cuam tshuam kev ua haujlwm, kev hu xov tooj thiab cov ntsiab lus hloov. Qhov kev tiv thaiv tau pom zoo ua rau qis dua nyiaj siv ua haujlwm piv rau Retpoline tiv thaiv.
    • Txhim kho qhov tsis zoo uas tso cai rau kev hla kev tiv thaiv Spectre v2 tawm tsam thaum siv tib lub xov tooj ntau lub tshuab (SMT lossis Hyper-Threading) thiab tshwm sim los ntawm kev tsis ua haujlwm ntawm STIBP (Single Thread Indirect Branch Predictors) mechanism thaum xaiv IBRS tiv thaiv hom.
    • Rau cov tshuab raws li ARM64 architecture, lub hom phiaj sib dhos tshiab "virtconfig" tau raug ntxiv, thaum xaiv, tsuas yog qhov tsawg kawg nkaus ntawm cov khoom xyaw uas yuav tsum tau khau raj hauv virtualization systems tau qhib.
    • Rau m68k architecture, kev txhawb nqa rau kev lim dej hu siv lub tshuab seccomp tau ntxiv.
    • Ntxiv kev txhawb nqa rau CRB TPM2 (Command Response Buffer) cov khoom siv ua rau AMD Ryzen processors, raws li Microsoft Pluton thev naus laus zis.
  • Network subsystem
    • Ib qho netlink interface tau ntxiv rau kev teeb tsa PLCA (Lub Cev Txheej Txheem Sib Nqus Sib Nrauj Avoidance) sublayer, txhais hauv IEEE 802.3cg-2019 specification thiab siv nyob rau hauv 802.3cg (10Base-T1S) Ethernet tes hauj lwm optimized rau kev sib txuas Is Taws Nem ntawm Tej yam khoom siv thiab kev lag luam. Kev siv PLCA txhim kho kev ua tau zoo hauv Ethernet tes hauj lwm nrog kev tshaj tawm sib koom.
    • Kev them nyiaj yug rau "wireless extensions" API rau kev tswj hwm WiFi 7 (802.11be) wireless interfaces tau raug txiav vim qhov API no tsis npog tag nrho cov chaw tsim nyog. Thaum sim siv "wireless extensions" API, uas txuas ntxiv tau txais kev txhawb nqa raws li cov txheej txheem emulated, cov lus ceeb toom tam sim no yuav tshwm sim rau feem ntau cov khoom siv tam sim no.
    • Cov ntaub ntawv ntxaws ntxaws ntawm netlink API tau raug npaj (rau cov neeg tsim khoom tseem ceeb thiab rau cov neeg siv qhov chaw thov tsim tawm). ynl-gen-c kev siv hluav taws xob tau raug siv los tsim C code raws li YAML cov lus qhia ntawm Netlink raws tu qauv.
    • Kev them nyiaj yug rau qhov kev xaiv IP_LOCAL_PORT_RANGE tau ntxiv rau hauv lub network sockets kom yooj yim rau kev teeb tsa ntawm kev sib txuas tawm los ntawm cov neeg txhais lus chaw nyob yam tsis siv SNAT. Thaum siv ib tus IP chaw nyob ntawm ntau lub tswv tsev, IP_LOCAL_PORT_RANGE ua rau nws muaj peev xwm siv ntau qhov sib txawv ntawm cov chaw nres nkoj tawm ntawm txhua tus tswv tsev, thiab xa cov ntawv xa mus raws li cov chaw nres nkoj ntawm lub rooj vag.
    • Rau MPTCP (MultiPath TCP), muaj peev xwm ua tiav cov kwj sib xyaw siv IPv4 thiab IPv6 raws tu qauv tau siv. MPTCP yog qhov txuas ntxiv ntawm TCP raws tu qauv rau kev teeb tsa kev ua haujlwm ntawm TCP kev sib txuas nrog kev xa cov pob ntawv ib txhij ntawm ntau txoj hauv kev los ntawm kev sib txawv network cuam tshuam nrog cov chaw sib txawv IP.
    • Rau IPv4, nws muaj peev xwm siv qhov loj TCP txuas ntxiv, uas tso cai rau koj kom nce qhov siab tshaj plaws TCP pob ntawv loj rau 4GB kom ua kom zoo dua kev ua haujlwm ntawm kev kub ceev hauv cov ntaub ntawv chaw sib txuas. Ib qho zoo sib xws hauv pob ntawv loj nrog 16-ntsis header teb qhov loj yog ua tiav los ntawm kev siv cov pob ntawv "jumbo", qhov loj hauv IP header uas tau teem rau 0, thiab qhov loj me yog xa mus rau hauv ib qho 32-ntsis. teb nyob rau hauv ib tug cais header.
    • Ib qho tshiab sysctl parameter default_rps_mask tau ntxiv, los ntawm qhov uas koj tuaj yeem teeb tsa lub neej ntawd RPS (Tau Txais Pob Khoom Steering) kev teeb tsa, uas yog lub luag haujlwm rau kev faib cov kev ua haujlwm ntawm cov khoom xa tuaj hla CPU cores ntawm qhov cuam tshuam tus tuav.
    • Kev them nyiaj yug rau cov kab kev ua haujlwm rau kev txwv CBQ (chav kawm ntawv queuing), ATM (ATM virtual circuits), dsmark (differentiated service marker), tcindex (traffic-control index) thiab RSVP (resource reservation protocol) tsheb tau raug txiav lawm. Cov kev qhuab qhia no tau raug tso tseg rau lub sijhawm ntev thiab tsis muaj leej twg txaus siab los txhawb lawv ntxiv.
  • Khoom siv
    • Tshem tawm tag nrho DRI1 raws li cov duab tsav tsheb: i810 (cov laus sib xyaw Intel 8xx daim npav), mga (Matrox GPU), r128 (ATI Rage 128 GPU, suav nrog Rage Fury, XPERT 99 thiab XPERT 128 phaib), savage (S3 Savage GPU), sis (Crusty SiS GPU), tdfx (3dfx Voodoo) thiab ntawm (VIA IGP), uas tau deprecated hauv 2016 thiab tsis tau txais kev txhawb nqa hauv Mesa txij li xyoo 2012.
    • Tshem tawm legacy framebuffer drivers (fbdev) omap1, s3c2410, tmiobb thiab w100fb.
    • Ib tus neeg tsav tsheb DRM tau ntxiv rau VPU (Versatile Processing Unit) cov chav nyob ua ke rau hauv Intel Meteor Lake CPU (14th tiam), tsim los ua kom nrawm rau kev ua haujlwm cuam tshuam nrog lub zeem muag hauv computer thiab kev kawm tshuab. Tus neeg tsav tsheb tau siv los ntawm "accel" subsystem, txhawm rau muab kev txhawb nqa rau kev suav cov accelerators, uas tuaj yeem muab tau los ntawm tus kheej ASICs lossis raws li IP thaiv hauv SoC thiab GPU.
    • Tus neeg tsav tsheb i915 (Intel) nthuav tawm kev txhawb nqa rau cov npav tshwj xeeb Intel Arc (DG2 / Alchemist), muab kev txhawb nqa ua ntej rau Meteor Lake GPUs, thiab suav nrog kev txhawb nqa rau Intel Xe HP 4tile GPUs.
    • Tus neeg tsav tsheb amdgpu ntxiv kev txhawb nqa rau AdaptiveSync thev naus laus zis thiab muaj peev xwm siv hom Kev Nyab Xeeb Kev Nyab Xeeb nrog ntau cov lus qhia. Kev txhawb nqa tshiab rau DCN 3.2 (Display Core Next), SR-IOV RAS, VCN RAS, SMU 13.x thiab DP 2.1.
    • Tus tsav tsheb msm (Qualcomm Adreno GPU) tau ntxiv kev txhawb nqa rau SM8350, SM8450 SM8550, SDM845 thiab SC8280XP platforms.
    • Tus neeg tsav tsheb Nouveau tsis txhawb cov qub ioctl hu.
    • Kev sim txhawb rau NPU VerSilicon (VeriSilicon Neural Network Processor) tau ntxiv rau tus tsav tsheb etnaviv.
    • Tus tsav tsheb pata_parport tau ua tiav rau IDE drives txuas nrog ntawm qhov chaw sib txuas. Tus neeg tsav tsheb ntxiv tau tso cai rau peb tshem tawm cov qub PARIDE tsav tsheb los ntawm cov ntsiav thiab kho lub ATA subsystem. Ib qho kev txwv ntawm tus tsav tsheb tshiab yog qhov tsis muaj peev xwm los txuas lub tshuab luam ntawv thiab lub disk ntawm qhov chaw sib txuas.
    • Ntxiv ath12k tsav tsheb rau wireless phaib ntawm Qualcomm chips txhawb Wi-Fi 7. Ntxiv kev txhawb nqa rau wireless phaib ntawm RealTek RTL8188EU chips.
    • Ntxiv kev txhawb nqa rau 46 pawg nrog cov txheej txheem raws li ARM64 architecture, suav nrog Samsung Galaxy tab A (2015), Samsung Galaxy S5, BananaPi R3, Debix Model A, EmbedFire LubanCat 1/2, Facebook Greatlakes, Txiv kab ntxwv Pi R1 Plus, Tesla FSD, thiab kuj tseem siv tau raws li SoC Qualcomm MSM8953 (Snapdragon 610), SM8550 (Snapdragon 8 Gen 2), SDM450 thiab SDM632, Rockchips RK3128 TV box, RV1126 Vision, RK3588, RK3568, RK3566K3588, RK3328K3, thiab 642/ AM654 / AM68).

Nyob rau tib lub sijhawm, Latin American Free Software Foundation tsim ib qho version ntawm cov ntsiav dawb kiag li 6.3 - Linux-libre 6.3-gnu, tshem tawm cov ntsiab lus ntawm firmware thiab cov tsav tsheb uas muaj cov khoom tsis pub dawb lossis cov lej, qhov uas muaj kev txwv. los ntawm cov chaw tsim khoom. Hauv kev tso tawm 6.3, blobs tau ntxuav hauv tus tshiab ath12k, aw88395 thiab peb2466 tsav tsheb, nrog rau hauv cov ntaub ntawv tshiab rau cov khoom siv qcom raws li AArch64 architecture. Hloov kho blob tu code hauv cov tsav tsheb thiab subsystems amdgpu, xhci-rcar, qcom-q6v5-pas, sp8870, av7110, as well as in drivers for DVB cards with software decoding and in precompiled BPF files. Kev ntxuav ntawm mga, r128, tm6000, cpia2 thiab r8188eu tsav tsheb tau raug tso tseg txij li thaum lawv tau raug tshem tawm ntawm cov ntsiav. Txhim kho i915 tsav tsheb blob tu.

Tau qhov twg los: opennet.ru

Ntxiv ib saib