Linux Kernel tso tawm 5.17

Tom qab ob lub hlis ntawm kev txhim kho, Linus Torvalds nthuav tawm qhov tso tawm ntawm Linux ntsiav 5.17. Ntawm cov kev hloov pauv tseem ceeb tshaj plaws: kev tswj hwm kev ua haujlwm tshiab rau AMD processors, muaj peev xwm rov ua dua daim ntawv qhia tus neeg siv ID hauv cov ntaub ntawv, kev txhawb nqa rau cov kev pabcuam BPF portable, kev hloov pauv ntawm pseudo-random tooj generator rau BLAKE2s algorithm, RTLA utility rau kev tshawb xyuas kev ua tiav ntawm lub sijhawm tiag tiag, ib qho tshiab fscache backend rau caching network cov ntaub ntawv, lub peev xwm los txuas cov npe rau cov haujlwm tsis qhia npe mmap.

Tus tshiab version suav nrog 14203 kho los ntawm 1995 tus tsim tawm, thaj loj yog 37 MB (qhov kev hloov pauv cuam tshuam rau 11366 cov ntaub ntawv, 506043 kab ntawm cov lej tau ntxiv, 250954 kab raug tshem tawm). Kwv yees li 44% ntawm tag nrho cov kev hloov pauv tau qhia hauv 5.17 muaj feem xyuam rau cov cuab yeej tsav tsheb, kwv yees li 16% ntawm cov kev hloov pauv cuam tshuam txog kev hloov kho cov cai tshwj xeeb rau cov khoom siv kho vajtse, 15% muaj feem cuam tshuam nrog pawg network, 4% cuam tshuam nrog cov ntaub ntawv, thiab 4% muaj feem xyuam nrog cov kernel subsystems.

Kev tsim kho tshiab tseem ceeb hauv kernel 5.17:

  • Disk subsystem, I / O thiab cov ntaub ntawv systems
    • Ua tiav qhov muaj peev xwm ntawm nested mapping ntawm tus neeg siv IDs ntawm mounted cov ntaub ntawv systems, siv los sib piv cov ntaub ntawv ntawm ib tug neeg siv tshwj xeeb ntawm ib tug mounted txawv teb chaws muab faib nrog lwm tus neeg nyob rau hauv lub tam sim no system. Qhov ntxiv feature tso cai rau koj mus recursively siv daim duab qhia chaw nyob rau sab saum toj ntawm cov ntaub ntawv systems rau cov maps twb tau thov.
    • Lub fscache subsystem, siv los npaj caching hauv cov ntaub ntawv hauv zos ntawm cov ntaub ntawv xa mus los ntawm cov ntaub ntawv hauv network, tau sau tag nrho. Qhov kev siv tshiab yog qhov txawv los ntawm qhov yooj yim ntawm txoj cai thiab kev hloov ntawm kev ua haujlwm nyuaj ntawm kev npaj thiab taug qab cov khoom xeev nrog cov txheej txheem yooj yim. Kev them nyiaj yug rau fscache tshiab yog siv rau hauv CIFS cov ntaub ntawv kaw lus.
    • Qhov kev tshwm sim taug qab subsystem hauv fanotify FS siv hom kev tshwm sim tshiab, FAN_RENAME, uas tso cai rau koj los cuam tshuam tam sim ntawm kev hloov npe cov ntaub ntawv lossis cov npe (yav dhau los, ob qhov xwm txheej sib cais FAN_MOVED_FROM thiab FAN_MOVED_TO tau siv los ua kev hloov npe).
    • Btrfs cov ntaub ntawv kaw lus tau ua kom zoo rau kev txiav thiab fsync kev ua haujlwm rau cov npe loj, siv los ntawm kev luam cov yuam sij nkaus xwb thiab txo cov nqi ntawm cov ntaub ntawv nkag. Kev them nyiaj yug rau indexing thiab nrhiav los ntawm qhov loj ntawm qhov chaw dawb cov ntaub ntawv tau muab, uas tau txo latency los ntawm kwv yees li 30% thiab txo lub sij hawm tshawb nrhiav. Tso cai rau cuam tshuam cov haujlwm defragmentation. Lub peev xwm los ntxiv cov khoom siv thaum sib npaug ntawm cov tsav tsheb yog neeg xiam, i.e. thaum mounting ib cov ntaub ntawv system nrog rau qhov kev xaiv skip_balance.
    • Ib qho tshiab syntax rau mounting Ceph cov ntaub ntawv kaw lus tau thov, daws cov teeb meem uas twb muaj lawm cuam tshuam nrog kev khi rau IP chaw nyob. Ntxiv rau qhov chaw nyob IP, tam sim no koj tuaj yeem siv cov cim qhia pawg (FSID) txhawm rau txheeb xyuas lub server: mount -t ceph [email tiv thaiv]_name=/[subdir] mnt -o mon_addr=monip1[:port][/monip2[:port]]
    • Cov ntaub ntawv Ext4 tau txav mus rau qhov tshiab mounting API uas cais cov mount xaiv parsing thiab superblock configuration kauj ruam. Peb tau tso tseg kev txhawb nqa rau lub lazytime thiab nolazytime mount xaiv, uas tau ntxiv raws li kev hloov pauv ib ntus kom yooj yim rau kev hloov pauv ntawm util-linux siv tus chij MS_LAZYTIME. Ntxiv kev txhawb nqa rau kev teeb tsa thiab nyeem ntawv hauv FS (ioctl FS_IOC_GETFSLABEL thiab FS_IOC_SETFSLABEL).
    • NFSv4 ntxiv kev txhawb nqa rau kev ua haujlwm hauv cov ntaub ntawv tsis txaus ntseeg hauv cov ntaub ntawv thiab cov npe. NFSv4.1+ ntxiv kev txhawb nqa rau kev txhais cov kev sib sau ua ke (trunking).
  • Kev pabcuam nco thiab system
    • Ntxiv amd-pstate tus neeg tsav tsheb los muab kev tswj cov zaus tswj kom zoo. Tus neeg tsav tsheb txhawb nqa AMD CPUs thiab APUs pib los ntawm Zen 2 tiam, tsim ua ke nrog Valve thiab yog tsom rau kev txhim kho kev tswj hwm lub zog. Rau kev hloov pauv zaus, CPPC (Collaborative Processor Performance Control) mechanism yog siv, uas tso cai rau koj hloov cov ntsuas kom raug ntau dua (tsis txwv rau peb theem kev ua tau zoo) thiab teb sai dua rau cov kev hloov hauv xeev dua li yav dhau los siv ACPI-raws li P-xeev. tsav tsheb (CPUFreq).
    • eBPF subsystem muaj bpf_loop() handler, uas muab lwm txoj hauv kev los npaj cov voj voog hauv eBPF cov kev pab cuam, sai dua thiab yooj yim dua rau kev txheeb xyuas los ntawm tus neeg pov thawj.
    • Nyob rau theem ntawm cov ntsiav, CO-RE (Compile Ib zaug - Khiav Txhua Qhov Chaw) yog siv, uas tso cai rau koj los sau cov cai ntawm eBPF cov kev pab cuam ib zaug thiab siv ib qho tshwj xeeb universal loader uas hloov cov kev pab cuam thauj khoom mus rau tam sim no kernel thiab BTF hom. (BPF Hom Hom).
    • Nws muaj peev xwm muab cov npe rau thaj chaw ntawm tus kheej tsis qhia npe (tso tawm ntawm malloc) lub cim xeeb, uas tuaj yeem ua kom yooj yim debugging thiab optimization ntawm nco noj hauv daim ntawv thov. Cov npe raug muab los ntawm prctl nrog PR_SET_VMA_ANON_NAME chij thiab tso tawm hauv /proc/pid/maps thiab /proc/pid/smaps hauv daim ntawv "[anon: ]".
    • Tus neeg ua haujlwm teem sijhawm muab kev taug qab thiab nthuav tawm hauv /proc/PID/sched lub sijhawm siv los ntawm cov txheej txheem hauv lub xeev yuam-tsis ua haujlwm, siv, piv txwv li, txo cov load thaum lub processor overheats.
    • Ntxiv gpio-sim module, tsim los simulate GPIO chips rau kev sim.
    • Ntxiv "latency" subcommand rau "perf ftrace" hais kom ua kom muaj cov histograms nrog cov ntaub ntawv latency.
    • Ntxiv ib txheej ntawm "RTLA" cov khoom siv rau kev txheeb xyuas kev ua haujlwm hauv lub sijhawm. Nws suav nrog cov khoom siv xws li osnoise (txiav txim siab qhov cuam tshuam ntawm kev ua haujlwm ntawm kev ua haujlwm ntawm kev ua haujlwm) thiab timerlat (hloov qhov ncua sij hawm cuam tshuam nrog lub sijhawm).
    • Ib qhov thib ob ntawm thaj ua rau thaj tau ua ke nrog kev siv lub tswv yim ntawm nplooj ntawv folios, uas zoo li cov nplooj ntawv sib xyaw, tab sis tau txhim kho cov ntsiab lus thiab lub koom haum pom tseeb ntawm kev ua haujlwm. Siv tomes tso cai rau koj kom ceev ceev tswj kev nco hauv qee lub hauv paus subsystems. Cov kev thov thaj ua rau thaj ua tiav qhov hloov pauv ntawm nplooj ntawv cache rau kev siv tomes thiab ntxiv kev txhawb nqa thawj zaug rau tomes hauv XFS cov ntaub ntawv kaw lus.
    • Ntxiv "ua mod2noconfig" tsim hom, uas tsim ib qho kev teeb tsa uas sau tag nrho cov neeg xiam oob qhab subsystems nyob rau hauv daim ntawv ntawm kernel modules.
    • Cov kev cai rau cov version ntawm LLVM/Clang uas tuaj yeem siv los tsim cov ntsiav tau raug tsa. Tsim tam sim no yuav tsum muaj tsawg kawg yog LLVM 11 tso tawm.
  • Virtualization thiab Kev Ruaj Ntseg
    • Ib qho kev hloov kho tshiab ntawm pseudo-random tooj generator RDRAND, lub luag haujlwm rau kev ua haujlwm ntawm /dev/random thiab /dev/urandom li, yog npaj siab, tseem ceeb rau kev hloov mus rau kev siv BLAKE2s hash muaj nuj nqi es tsis txhob ntawm SHA1 rau entropy sib xyaw ua haujlwm. Qhov kev hloov pauv tau txhim kho kev ruaj ntseg ntawm pseudo-random tooj generator los ntawm kev tshem tawm cov teeb meem SHA1 algorithm thiab tshem tawm cov overwriting ntawm RNG initialization vector. Txij li thaum BLAKE2s algorithm yog superior rau SHA1 hauv kev ua tau zoo, nws siv kuj muaj txiaj ntsig zoo rau kev ua haujlwm.
    • Ntxiv kev tiv thaiv tawm tsam qhov tsis zoo hauv cov txheej txheem tshwm sim los ntawm kev kwv yees ua tiav cov lus qhia tom qab tsis muaj kev cuam tshuam rau pem hauv ntej dhia ua haujlwm. Qhov teeb meem tshwm sim vim ua ntej emptive cov lus qhia tam sim ntawd tom qab cov lus qhia ntawm ceg hauv kev nco (SLS, Straight Line Speculation). Ua kom muaj kev tiv thaiv yuav tsum muaj kev tsim kho nrog kev tso tawm tam sim no ntawm GCC 12.
    • Ntxiv ib lub tswv yim rau kev taug qab cov ntaub ntawv suav (refcount, reference-count), txhawm rau txo cov lej yuam kev hauv kev suav suav uas ua rau nkag mus rau lub cim xeeb tom qab nws tau tso tawm. Lub tshuab tam sim no txwv rau lub network subsystem, tab sis yav tom ntej nws tuaj yeem hloov mus rau lwm qhov ntawm cov ntsiav.
    • Kev tshawb xyuas txuas ntxiv ntawm cov ntawv nkag tshiab hauv cov txheej txheem nco txog nplooj ntawv tau siv, tso cai kom pom qee yam kev puas tsuaj thiab nres lub kaw lus, thaiv kev tawm tsam thaum ntxov.
    • Ntxiv lub peev xwm los qhib cov ntsiav modules ncaj qha los ntawm kernel nws tus kheej, thiab tsis yog los ntawm tus tuav hauv cov neeg siv qhov chaw, uas tso cai rau siv LoadPin LSM modules los xyuas kom meej tias kernel modules tau ntim rau hauv lub cim xeeb los ntawm cov khoom pov thawj pov thawj.
    • Muab kev sib dhos nrog "-Wcast-function-type" chij, uas ua rau cov lus ceeb toom txog kev ua haujlwm casting pointers rau hom incompatible.
    • Ntxiv tus tswv tsev virtual tus tsav tsheb pvUSB rau Xen hypervisor, muab kev nkag mus rau USB cov khoom xa mus rau cov qhua tuaj noj mov (tso cai rau cov qhua tuaj yeem nkag mus rau lub cev USB khoom siv rau cov qhua tuaj noj mov).
    • Ib qho module tau ntxiv uas tso cai rau koj los cuam tshuam ntawm Wi-nkaus nrog IME (Intel Management Engine) subsystem, uas tuaj nyob rau hauv feem ntau niaj hnub motherboards nrog Intel processors thiab yog siv raws li ib tug cais microprocessor uas ua hauj lwm ntawm nws tus kheej ntawm CPU.
    • Rau ARM64 architecture, kev txhawb nqa tau siv rau KCSAN (Kernel Concurrency Sanitizer) debugging tool, tsim los txhawm rau txheeb xyuas cov haiv neeg nyob hauv cov ntsiav.
    • Rau 32-ntsis ARM systems, muaj peev xwm siv KFENCE mechanism los xyuas qhov yuam kev thaum ua haujlwm nrog lub cim xeeb tau ntxiv.
    • KVM hypervisor ntxiv kev txhawb nqa rau AMX (Advanced Matrix Extensions) cov lus qhia siv hauv Intel Xeon Scalable server processors yav tom ntej.
  • Network subsystem
    • Ntxiv kev txhawb nqa rau kev ua haujlwm offloading ntsig txog kev tswj xyuas tsheb mus rau sab ntawm cov khoom siv network.
    • Ntxiv lub peev xwm los siv MCTP (Management Component Transport Protocol) hla cov khoom siv serial. MCTP tuaj yeem siv los sib txuas lus ntawm cov tswj tswj thiab lawv cov khoom siv sib txuas (tus tswv processors, peripherals, thiab lwm yam).
    • TCP pawg tau ua kom zoo dua qub, piv txwv li, txhawm rau txhim kho kev ua haujlwm ntawm recvmsg hu, ncua kev tso tawm ntawm lub qhov (socket buffers) tau ua tiav.
    • Ntawm CAP_NET_RAW txoj cai theem, teeb tsa SO_PRIORITY thiab SO_MARK hom los ntawm kev ua haujlwm setsockopt tau tso cai.
    • Rau IPv4, cov qhov (socket) nyoos raug tso cai ua khi rau cov chaw tsis nyob hauv zos siv IP_FREEBIND thiab IP_TRANSPARENT kev xaiv.
    • Ntxiv sysctl arp_missed_max los teeb tsa tus lej pib ntawm kev ua tsis tiav thaum lub sijhawm ARP saib xyuas, tom qab ntawd lub network interface tau muab tso rau hauv lub xeev tsis taus.
    • Muab lub peev xwm los teeb tsa cais sysctl min_pmtu thiab mtu_expires qhov tseem ceeb rau network namespaces.
    • Ntxiv qhov muaj peev xwm los teeb tsa thiab txiav txim siab qhov loj ntawm buffers rau cov pob khoom nkag thiab tawm mus rau ethtool API.
    • Netfilter tau ntxiv kev txhawb nqa rau kev lim cov tsheb thauj mus los pppoe hauv kev sib txuas network.
    • Lub ksmbd module, uas siv cov ntaub ntawv server siv SMB3 raws tu qauv, tau ntxiv kev txhawb nqa rau kev sib pauv tseem ceeb, qhib lub network chaw nres nkoj 445 rau smbdirect, thiab ntxiv kev txhawb nqa rau "smb2 max credit" parameter.
  • Khoom siv
    • Kev them nyiaj yug rau cov ntxaij vab tshaus rau kev nthuav tawm cov ntaub ntawv tsis pub lwm tus paub tau ntxiv rau drm (Direct Renderering Manager) subsystem thiab tus tsav tsheb i915, piv txwv li, qee lub laptops tau nruab nrog cov ntxaij vab tshaus nrog lub built-in tsis pub lwm tus paub saib hom, ua rau nws nyuaj rau saib los ntawm sab nraud. . Cov kev hloov pauv ntxiv tso cai rau koj los txuas cov tsav tsheb tshwj xeeb rau cov ntxaij vab tshaus zoo li no thiab tswj cov kev tshawb nrhiav tsis pub lwm tus paub los ntawm kev teeb tsa cov khoom hauv cov tsav tsheb KMS.
    • Tus tsav tsheb amdgpu suav nrog kev txhawb nqa rau STB (Smart Trace Buffer) debugging thev naus laus zis rau txhua tus AMD GPUs uas txhawb nqa nws. STB ua rau nws yooj yim dua los txheeb xyuas qhov ua tsis tiav thiab txheeb xyuas qhov chaw ntawm cov teeb meem los ntawm kev khaws cia hauv cov ntaub ntawv tshwj xeeb tsis hais txog cov haujlwm ua ntej qhov kawg ua tsis tiav.
    • Tus tsav tsheb i915 ntxiv kev txhawb nqa rau Intel Raptor Lake S chips thiab ua kom muaj kev txhawb nqa rau cov duab subsystem ntawm Intel Alder Lake P chips los ntawm lub neej ntawd.
    • Kev them nyiaj yug rau kho vajtse scrolling acceleration nyob rau hauv lub console tau raug xa rov qab rau hauv fbcon/fbdev tsav tsheb.
    • Txuas ntxiv kev koom ua ke ntawm kev hloov pauv los txhawb Apple M1 chips. Ua kom muaj peev xwm siv tus tsav tsheb simpledrm ntawm cov tshuab nrog Apple M1 nti rau kev tso tawm los ntawm lub framebuffer muab los ntawm lub firmware.
    • Ntxiv kev txhawb nqa rau ARM SoΠ‘, pab kiag li lawm thiab boards Snapdragon 7c, 845 thiab 888 (Sony Xperia XZ2 / XZ2C / XZ3, Xperia 1 III / 5 III, Samsung J5, Microsoft Surface Duo 2), Mediatek MT6589 (Fairphone FP1), Mediatek MT8183 ( Acer Chromebook 314), Mediatek MT7986a/b (siv nyob rau hauv Wi-nkaus routers), Broadcom BCM4908 (Netgear RAXE500), Qualcomm SDX65, Samsung Exynos7885, Renesas R-Car S4-8, TI J721s2, TI USPAR320LP i.8MX, NEX , Aspeed AST8/AST2500, Engicam i.Core STM2600MP32, Allwinner Tanix TX1, Facebook Bletchley BMC, Goramo MultiLink, JOZ Access Point, Y Soft IOTA Crux/Crux+, t6/t6000 MacBook Pro 6001/14.
    • Ntxiv kev txhawb nqa rau ARM Cortex-M55 thiab Cortex-M33 processors.
    • Ntxiv kev txhawb nqa rau cov khoom siv raws li CPU MIPS: Linksys WRT320N v1, Netgear R6300 v1, Netgear WN2500RP v1/v2.
    • Ntxiv kev txhawb nqa rau StarFive JH7100 SoC raws li RISC-V architecture.
    • Ntxiv lenovo-yogabook-wmi tsav tsheb los tswj cov keyboard backlight thiab nkag mus rau ntau yam sensors hauv Lenovo Yoga Phau Ntawv.
    • Ntxiv asus_wmi_sensors tsav tsheb nkag mus rau cov sensors siv ntawm Asus X370, X470, B450, B550 thiab X399 motherboards raws li AMD Ryzen processors.
    • Ntxiv x86-android-ntsiav tshuaj tsav tsheb rau x86-based ntsiav tshuaj PCs xa nrog lub hauv paus platform.
    • Ntxiv kev txhawb nqa rau TrekStor SurfTab duo W1 kov cov ntxaij vab tshaus thiab cwj mem hluav taws xob rau Chuwi Hi10 Plus thiab Pro ntsiav tshuaj.
    • Cov tsav tsheb rau SoC Tegra 20/30 tau ntxiv kev txhawb nqa rau kev tswj fais fab thiab hluav taws xob. Tso cai rau khau raj ntawm cov laus 32-ntsis Tegra SoC li xws li ASUS Prime TF201, Pad TF701T, Pad TF300T, Infinity TF700T, EeePad TF101 thiab Pad TF300TG.
    • Ntxiv cov tsav tsheb rau Siemens industrial computers.
    • Ntxiv kev txhawb nqa rau Sony Tulip Tiag tiag NT35521, Vivax TPC-9150, Innolux G070Y2-T02, BOE BF060Y8M-AJ0, JDI R63452, Novatek NT35950, Wanchanglong W552946ABA thiab Pab Pawg Source Display043015 Cmt.
    • Ntxiv kev txhawb nqa rau lub suab tshuab thiab codecs AMD Renoir ACP, Asahi Kasei Microdevices AKM4375, Intel systems siv NAU8825/MAX98390, Mediatek MT8915, nVidia Tegra20 S/PDIF, Qualcomm ALC5682I-VS, Texas Instruments TLVxxx320ADC Cov teeb meem nrog Tegra3 HD-audio tau raug daws. Ntxiv HDA kev txhawb nqa rau CS194L35 codecs. Txhim kho kev txhawb nqa rau lub suab tshuab rau Lenovo thiab HP laptops, nrog rau Gigabyte motherboards.

Tau qhov twg los: opennet.ru

Ntxiv ib saib