Linux Kernel tso tawm 5.19

Tom qab ob lub hlis ntawm kev txhim kho, Linus Torvalds nthuav tawm qhov tso tawm ntawm Linux ntsiav 5.19. Ntawm cov kev hloov pauv tseem ceeb tshaj plaws: kev txhawb nqa rau LoongArch processor architecture, kev koom ua ke ntawm "BIG TCP" thaj ua rau thaj, hom ntawm kev thov hauv fscache, kev tshem tawm code los txhawb cov hom ntawv a.out, muaj peev xwm siv ZSTD rau firmware compression, interface rau tswj kev nco tshem tawm ntawm cov neeg siv qhov chaw, nce kev ntseeg tau thiab kev ua tau zoo ntawm pseudo-random tooj generator, txhawb Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) thiab ARM SME (Scalable Matrix Extension) txuas ntxiv.

Hauv tsab ntawv tshaj tawm, Linus tau hais tias feem ntau yuav qhov kev tso tawm cov ntsiav tom ntej yuav raug suav nrog 6.0, txij li 5.x ceg tau sau txaus tso tawm los hloov thawj tus lej hauv tus lej version. Tus lej hloov pauv yog ua tiav rau qhov laj thawj zoo nkauj thiab yog ib kauj ruam tseem ceeb uas tshem tawm qhov tsis xis nyob vim muaj ntau yam teeb meem hauv koob.

Linus kuj tau hais tias nws siv Apple lub laptop raws li ARM64 architecture (Apple Silicon) nrog rau Linux ib puag ncig raws li Asahi Linux faib los tsim kev tso tawm. Nws tsis yog Linus lub chaw ua haujlwm tseem ceeb, tab sis nws siv lub platform los ntsuas nws qhov tsim nyog rau kev ua haujlwm kernel thiab kom ntseeg tau tias nws tuaj yeem tsim cov kernel tawm thaum mus ncig nrog lub laptop hnyav ntawm tes. Yav dhau los, ntau xyoo dhau los, Linus tau muaj kev paub siv cov cuab yeej Apple rau kev txhim kho - nws ib zaug siv lub PC raws li ppc970 CPU thiab Macbook Air laptop.

Tus tshiab version suav nrog 16401 kho los ntawm 2190 tus tsim tawm (hauv qhov kev tso tawm kawg muaj 16206 kho los ntawm 2127 tus neeg tsim tawm), thaj loj yog 90 MB (qhov kev hloov pauv cuam tshuam rau 13847 cov ntaub ntawv, 1149456 kab code tau ntxiv, 349177 kab raug tshem tawm). Txog 39% ntawm tag nrho cov kev hloov pauv tau qhia hauv 5.19 muaj feem xyuam rau cov cuab yeej tsav tsheb, kwv yees li 21% ntawm cov kev hloov pauv cuam tshuam txog kev hloov kho cov cai tshwj xeeb rau cov khoom siv kho vajtse, 11% cuam tshuam nrog pawg sib txuas, 4% cuam tshuam nrog cov ntaub ntawv, thiab 3% muaj feem xyuam nrog cov kernel subsystems.

Kev tsim kho tshiab tseem ceeb hauv kernel 5.19:

  • Disk subsystem, I / O thiab cov ntaub ntawv systems
    • EROFS (Enhanced Read-Only File System) cov ntaub ntawv, npaj rau kev siv ntawm cov ntawv nyeem nkaus xwb, tau hloov dua siab tshiab los siv fscache subsystem, uas muab cov ntaub ntawv caching. Qhov kev hloov pauv tau txhim kho kev ua tau zoo ntawm cov tshuab uas muaj ntau lub ntim tau pib los ntawm EROFS-raws li duab.
    • Ib qho kev xav tau nyeem hom tau ntxiv rau fscache subsystem, uas yog siv los kho EROFS. Hom tshiab tso cai rau koj los npaj kev nyeem caching los ntawm FS cov duab nyob rau hauv lub zos system. Nyob rau hauv sib piv rau qhov pib muaj hom ntawm kev ua hauj lwm, uas yog tsom rau caching nyob rau hauv lub zos cov ntaub ntawv system ntawm cov ntaub ntawv xa mus los ntawm lub network cov ntaub ntawv systems, lub "on-demand" hom delegates lub zog ntawm retrieving cov ntaub ntawv thiab sau nws mus rau lub cache rau ib tug cais. txheej txheem keeb kwm yav dhau khiav hauv cov neeg siv qhov chaw.
    • XFS muab lub peev xwm khaws ntau lab tus yam ntxwv txuas ntxiv hauv i-node. Qhov siab tshaj plaws ntawm cov ntaub ntawv rau ib cov ntaub ntawv tau nce los ntawm 4 billion mus rau 247. Ib hom tau siv rau atomically hloov kho ob peb cov ntaub ntawv txuas ntxiv ib zaug.
    • Btrfs cov ntaub ntawv kaw lus tau ua haujlwm zoo nrog cov xauv, uas tso cai rau kwv yees li 7% nce hauv kev ua haujlwm thaum sau ncaj qha rau hauv hom tam sim no. Kev ua haujlwm ntawm kev ua haujlwm hauv NOCOW hom (tsis muaj daim ntawv theej-on-sau) yog nce li ntawm 3%. Lub thauj khoom ntawm nplooj ntawv cache thaum khiav cov lus txib "xa" raug txo. Qhov tsawg kawg nkaus ntawm subpages tau raug txo los ntawm 64K mus rau 4K (subpages me dua li cov nplooj ntawv tuaj yeem siv tau). Kev hloov pauv tau ua los ntawm kev siv tsob ntoo radix mus rau XArrays algorithm.
    • Ib hom tau ntxiv rau NFS neeg rau zaub mov kom txuas ntxiv kev khaws cia ntawm lub xeev kaw los ntawm tus neeg siv khoom uas tau tso tseg tsis teb cov lus thov. Hom tshiab tso cai rau koj ncua kev kaw qhov kev tshem tawm mus txog ib hnub tshwj tsis yog lwm tus neeg thov kev sib tw kaw. Hauv hom qub, qhov thaiv tau raug tshem tawm 90 vib nas this tom qab tus neeg siv tsis teb.
    • Qhov kev tshwm sim taug qab subsystem hauv fanotify FS siv tus chij FAN_MARK_EVICTABLE, uas koj tuaj yeem lov tes taw pinning lub hom phiaj i-nodes hauv cache, piv txwv li, tsis quav ntsej cov ceg ntoo yam tsis muaj pinning lawv qhov chaw hauv cache.
    • Tus neeg tsav tsheb rau FAT32 cov ntaub ntawv kaw lus tau ntxiv kev txhawb nqa kom tau txais cov ntaub ntawv hais txog lub sijhawm ntawm cov ntaub ntawv tsim los ntawm statx system hu nrog kev ua kom zoo dua thiab ua haujlwm ntawm stat(), uas rov qab cov ntaub ntawv txuas ntxiv txog cov ntaub ntawv.
    • Qhov tseem ceeb optimizations tau ua rau tus neeg tsav tsheb exFAT tso cai rau tib lub sijhawm tshem tawm ntawm ib pawg ntawm cov haujlwm thaum 'dirsync' hom ua haujlwm, tsis yog kev sib txuas ntawm cov sector-los-sector clearing. Los ntawm kev txo tus naj npawb ntawm kev thov thaiv tom qab kev ua kom zoo, kev ua tau zoo ntawm kev tsim ntau cov npe ntawm SD daim npav tau nce ntau dua 73-85%, nyob ntawm qhov loj ntawm pawg.
    • Lub kernel suav nrog thawj qhov kev hloov kho tshiab rau ntfs3 tsav tsheb. Txij li thaum ntfs3 tau suav nrog 5.15 kernel lub Kaum Hli dhau los, tus tsav tsheb tsis tau hloov kho thiab kev sib txuas lus nrog cov neeg tsim khoom tau ploj mus, tab sis tam sim no cov neeg tsim khoom tau rov pib tshaj tawm cov kev hloov pauv. Cov kev thov thaj ua rau thaj tshem tawm qhov yuam kev ua rau lub cim xeeb xau thiab sib tsoo, daws teeb meem nrog xfstests tua, ntxuav cov lej tsis siv, thiab kho cov ntawv tsis raug.
    • Rau OverlayFS, lub peev xwm los qhia cov neeg siv IDs ntawm cov ntaub ntawv mounted tau raug siv, uas yog siv los ua kom phim cov ntaub ntawv ntawm ib tus neeg siv tshwj xeeb ntawm kev sib faib txawv teb chaws nrog lwm tus neeg siv ntawm cov kab ke tam sim no.
  • Kev pabcuam nco thiab system
    • Ntxiv kev txhawb nqa thawj zaug rau LoongArch cov lus qhia teeb tsa siv hauv Loongson 3 5000 processors, uas siv RISC ISA tshiab, zoo ib yam li MIPS thiab RISC-V. Lub LoongArch architecture muaj nyob rau hauv peb qhov tsw: stripped-down 32-ntsis (LA32R), tsis tu ncua 32-ntsis (LA32S), thiab 64-ntsis (LA64).
    • Tshem tawm code los txhawb a.out executable file format, uas tau deprecated nyob rau hauv tso tawm 5.1. Cov hom ntawv a.out tau ntev lawm deprecated ntawm Linux systems, thiab tiam ntawm a.out cov ntaub ntawv tsis tau txais kev txhawb los ntawm cov cuab yeej niaj hnub nyob rau hauv default Linux configurations. Lub loader rau a.out cov ntaub ntawv tuaj yeem ua tiav tag nrho hauv cov neeg siv qhov chaw.
    • Kev them nyiaj yug rau x86-kev xaiv khau raj tau raug txiav tawm: nosp, nosmap, nosmep, noexec thiab noclflush).
    • Kev them nyiaj yug rau lub qub CPU h8300 architecture (Renesas H8/300), uas tau ntev lawm tsis muaj kev txhawb nqa, tau raug txiav tawm.
    • Kev nthuav dav muaj peev xwm cuam tshuam txog kev teb rau kev tshawb pom ntawm kev sib cais cov xauv ("split locks") uas tshwm sim thaum nkag mus rau cov ntaub ntawv tsis zoo hauv lub cim xeeb vim tias thaum ua tiav cov lus qhia atomic, cov ntaub ntawv hla ob kab CPU cache. Cov kev thaiv zoo li no ua rau muaj kev poob qis hauv kev ua haujlwm. Yog tias yav dhau los, los ntawm lub neej ntawd, cov ntsiav yuav tshaj tawm cov lus ceeb toom nrog cov ntaub ntawv hais txog cov txheej txheem uas ua rau muaj kev thaiv, tam sim no cov txheej txheem teeb meem yuav raug ncua ntxiv kom txo qis kev ua haujlwm ntawm qhov seem ntawm lub kaw lus.
    • Ntxiv kev txhawb nqa rau IFS (In-Field Scan) cov txheej txheem siv hauv Intel processors, uas tso cai rau koj los khiav cov kev ntsuam xyuas CPU qis uas tuaj yeem txheeb xyuas cov teeb meem uas tsis pom los ntawm cov cuab yeej txheem raws li qhov yuam kev kho cov lej (ECC) lossis cov khoom sib xws. . Cov kev ntsuam xyuas tau ua nyob rau hauv daim ntawv ntawm downloadable firmware, tsim zoo ib yam li microcode tshiab. Cov qhabnias xeem muaj nyob ntawm sysfs.
    • Ntxiv lub peev xwm los embed cov ntaub ntawv bootconfig rau hauv cov ntsiav, uas tso cai, ntxiv rau cov kev xaiv kab lus txib, los txiav txim qhov tsis muaj ntawm cov ntsiav los ntawm cov ntaub ntawv teeb tsa. Embedding yog ua los ntawm kev xaiv los ua ke 'CONFIG_BOOT_CONFIG_EMBED_FILE=Β»/PATH/TO/BOOTCONFIG/FILEΒ»'. Yav dhau los, bootconfig tau txiav txim siab los ntawm kev txuas rau cov duab initrd. Kev koom ua ke rau hauv cov ntsiav tso cai rau bootconfig siv rau hauv kev teeb tsa yam tsis muaj initrd.
    • Muaj peev xwm rub tawm firmware compressed siv Zstandard algorithm tau ua tiav. Cov txheej txheem tswj cov ntaub ntawv / sys / chav kawm / firmware / * tau ntxiv rau sysfs, tso cai rau koj pib firmware thauj khoom los ntawm cov neeg siv chaw.
    • Lub io_uring asynchronous I/O interface muaj tus chij tshiab, IORING_RECVSEND_POLL_FIRST, uas, thaum teeb tsa, yuav xub xa lub network ua haujlwm kom ua tiav siv kev xaiv tsa, uas tuaj yeem txuag tau cov peev txheej hauv cov xwm txheej uas ua haujlwm nrog qee qhov kev ncua sijhawm tau txais. io_uring kuj tau ntxiv kev txhawb nqa rau lub qhov (socket) hu xov tooj, thov cov chij tshiab kom yooj yim rau kev tswj hwm cov ntaub ntawv piav qhia, ntxiv "ntau-shot" hom rau kev lees txais ntau qhov kev sib txuas ib zaug hauv kev lees txais () hu, thiab ntxiv cov haujlwm rau kev xa tawm NVMe txib ncaj qha mus rau lub cuab yeej.
    • Lub Xtensa architecture muab kev txhawb nqa rau KCSAN (Kernel Concurrency Sanitizer) debugging tool, tsim los txhawm rau txheeb xyuas cov haiv neeg nyob hauv cov ntsiav. Kuj ntxiv kev txhawb nqa rau hom pw tsaug zog thiab coprocessors.
    • Rau m68k architecture (Motorola 68000), lub tshuab virtual (platform simulator) raws li Android Goldfish emulator tau ua tiav.
    • Rau AArch64 architecture, kev txhawb nqa rau Armv9-A SME (Scalable Matrix Extension) txuas ntxiv tau ua tiav.
    • Lub eBPF subsystem tso cai rau khaws cov cim ntaus ntawv hauv cov qauv hauv daim ntawv qhia, thiab tseem ntxiv kev txhawb nqa rau cov taw qhia dynamic.
    • Ib qho tshiab proactive nco reclaim mechanism yog npaj los txhawb cov neeg siv-chaw tswj siv cov ntaub ntawv memory.reclaim. Sau tus lej rau cov ntaub ntawv teev tseg yuav sim tshem tawm cov lej sib raug ntawm bytes los ntawm cov teeb tsa cuam tshuam nrog cgroup.
    • Txhim kho qhov tseeb ntawm kev siv nco thaum compressing cov ntaub ntawv hauv kev sib pauv faib siv zswap mechanism.
    • Rau RISC-V architecture, kev txhawb nqa rau kev khiav 32-ntsis executables ntawm 64-ntsis tshuab yog muab, ib hom yog ntxiv rau khi txwv cov cwj pwm rau cov nplooj ntawv nco (piv txwv li, kom lov tes taw caching), thiab kexec_file_load() muaj nuj nqi yog siv. .
    • Qhov kev siv ntawm kev txhawb nqa rau 32-ntsis Armv4T thiab Armv5 systems yog yoog rau siv nyob rau hauv universal multi-platform kernel tsim haum rau txawv ARM systems.
  • Virtualization thiab Kev Ruaj Ntseg
    • Lub EFI subsystem siv lub peev xwm los hloov cov ntaub ntawv zais cia rau cov qhua tuaj noj mov yam tsis tau nthuav tawm rau tus tswv tsev. Cov ntaub ntawv yog muab los ntawm kev ruaj ntseg / coco directory hauv securityfs.
    • Lockdown tiv thaiv hom, uas txwv cov neeg siv hauv paus nkag mus rau cov ntsiav thiab thaiv UEFI Secure Boot bypass txoj hauv kev, tau tshem tawm qhov tsis zoo uas tso cai rau kev tiv thaiv hla dhau los ntawm kev tswj cov ntsiav debugger.
    • Muaj xws li thaj ua rau thaj tsom rau kev txhim kho kev ntseeg tau thiab kev ua tau zoo ntawm pseudo-random tooj generator.
    • Thaum lub tsev siv Clang 15, kev txhawb nqa rau lub tshuab rau randomizing kernel qauv yog siv.
    • Lub Landlock mechanism, uas tso cai rau koj kom txwv tsis pub muaj kev cuam tshuam ntawm ib pawg txheej txheem nrog rau ib puag ncig sab nraud, muab kev txhawb nqa rau cov cai uas tso cai rau koj los tswj kev ua tiav ntawm cov ntaub ntawv hloov npe ua haujlwm.
    • Lub IMA (Integrity Measurement Architecture) subsystem, tsim los txheeb xyuas kev ncaj ncees ntawm kev ua haujlwm ntawm cov khoom siv digital kos npe thiab hashes, tau hloov mus rau kev siv fs-verity module rau kev txheeb xyuas cov ntaub ntawv.
    • Lub logic ntawm kev ua thaum disabling unprivileged nkag mus rau lub eBPF subsystem tau hloov - yav tas los tag nrho cov lus txib txuam nrog bpf() system hu tau raug xiam, thiab pib los ntawm version 5.19, nkag mus rau cov lus txib uas tsis coj mus rau cov creation ntawm cov khoom yog sab laug. . Qhov kev coj cwj pwm no yuav tsum muaj cov txheej txheem tsim nyog los thauj cov kev pabcuam BPF, tab sis tom qab ntawd cov txheej txheem tsis tsim nyog tuaj yeem cuam tshuam nrog qhov program.
    • Ntxiv kev txhawb nqa rau AMD SEV-SNP (Secure Nested Paging) txuas ntxiv, uas muab kev ruaj ntseg ua haujlwm nrog nested nco nplooj ntawv cov lus thiab tiv thaiv "undeSErVed" thiab "SEVerity" tawm tsam ntawm AMD EPYC processors, uas tso cai hla dhau AMD SEV (Secure Encrypted Virtualization. ) tiv thaiv mechanism.
    • Ntxiv kev txhawb nqa rau Intel TDX (Trusted Domain Extensions) mechanism, uas tso cai rau koj los thaiv cov neeg thib peb sim nkag mus rau lub cim xeeb encrypted ntawm cov tshuab virtual.
    • Tus neeg tsav tsheb virtio-blk, siv los ua cov cuab yeej thaiv, tau ntxiv kev txhawb nqa rau I / O siv kev xaiv tsa, uas, raws li kev sim, tau txo qis latency li ntawm 10%.
  • Network subsystem
    • Cov pob muaj xws li BIG TCP thaj ua rau thaj uas tso cai rau koj los ua kom cov pob ntawv loj tshaj plaws ntawm TCP pob ntawv rau 4GB txhawm rau txhim kho kev ua haujlwm ntawm kev kub ceev hauv cov ntaub ntawv chaw network. 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. Hauv kev ntsuas kev ua tau zoo, teeb tsa cov pob ntawv loj rau 185 KB nce ntxiv los ntawm 50% thiab txo qis cov ntaub ntawv hloov latency.
    • Ua hauj lwm txuas ntxiv ntawm kev sib xyaw cov cuab yeej rau hauv pawg network txhawm rau taug qab cov laj thawj ntawm kev xa cov pob ntawv (cov lej laj thawj). Qhov laj thawj code raug xa thaum lub cim xeeb cuam tshuam nrog pob ntawv raug tso tawm thiab tso cai rau cov xwm txheej xws li pob ntawv pov tseg vim qhov yuam kev header, rp_filter spoofing detection, invalid checksum, out of memory, IPSec XFRM rules triggered, invalid sequence number TCP, etc.
    • Ntxiv kev txhawb nqa rau kev poob rov qab MPTCP (MultiPath TCP) kev sib txuas siv TCP li niaj zaus, nyob rau hauv cov xwm txheej uas qee yam MPTCP tsis tuaj yeem 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. Ntxiv API los tswj MPTCP ntws los ntawm cov neeg siv qhov chaw.
  • Khoom siv
    • Ntxiv tshaj 420k kab ntawm txoj cai cuam tshuam rau amdgpu tsav tsheb, ntawm uas txog 400k kab yog pib tsim cov ntaub ntawv header rau ASIC sau npe cov ntaub ntawv hauv AMD GPU tsav tsheb, thiab lwm 22.5k kab muab kev pib ua haujlwm ntawm kev txhawb nqa rau AMD SoC21. Tag nrho cov tsav tsheb loj rau AMD GPUs tshaj 4 lab kab ntawm cov cai. Ntxiv rau SoC21, AMD tsav tsheb suav nrog kev txhawb nqa rau SMU 13.x (System Management Unit), kev txhawb nqa tshiab rau USB-C thiab GPUVM, thiab tau npaj los txhawb cov tiam tom ntej ntawm RDNA3 (RX 7000) thiab CDNA (AMD Instinct) platforms.
    • Tus tsav tsheb i915 (Intel) tau nthuav dav muaj peev xwm cuam tshuam txog kev tswj fais fab. Ntxiv cov cim rau Intel DG2 (Arc Alchemist) GPUs siv rau ntawm lub laptops, muab kev txhawb nqa thawj zaug rau Intel Raptor Lake-P (RPL-P) platform, ntxiv cov ntaub ntawv hais txog Arctic Sound-M cov duab kos), siv ABI rau kev suav cav, ntxiv rau DG2 phaib txhawb nqa rau Tile4 hom; rau cov tshuab raws li Haswell microarchitecture, DisplayPort HDR kev txhawb nqa yog siv.
    • Tus neeg tsav tsheb Nouveau tau hloov mus rau kev siv drm_gem_plane_helper_prepare_fb handler; static memory allocation tau siv rau qee cov qauv thiab qhov sib txawv. Raws li kev siv kernel modules qhib los ntawm NVIDIA hauv Nouveau, txoj haujlwm kom deb li deb los txheeb xyuas thiab tshem tawm qhov yuam kev. Nyob rau hauv lub neej yav tom ntej, lub firmware luam tawm yog npaj los siv los txhim kho kev ua haujlwm ntawm tus neeg tsav tsheb.
    • Ntxiv tus tsav tsheb rau NVMe maub los siv hauv Apple computers raws li M1 nti.

Nyob rau tib lub sijhawm, Latin American Free Software Foundation tsim ib qho version ntawm cov ntsiav dawb kiag li 5.19 - Linux-libre 5.19-gnu, tshem tawm cov ntsiab lus ntawm firmware thiab cov tsav tsheb uas muaj cov khoom tsis pub dawb lossis ntu ntawm cov lej, qhov uas yog. txwv los ntawm cov chaw tsim khoom. Qhov kev tso tawm tshiab ntxuav cov tsav tsheb rau pureLiFi X / XL / XC thiab TI AMx3 Wkup-M3 IPC. Hloov kho blob tu code hauv Silicon Labs WFX, AMD amdgpu, Qualcomm WCNSS Peripheral Image Loader, Realtek Bluetooth, Mellanox Spectrum, Marvell WiFi-Ex, Intel AVS, IFS, pu3-imgu tsav tsheb thiab subsystems. Kev ua haujlwm ntawm Qualcomm AArch64 devicetree cov ntaub ntawv tau ua tiav. Ntxiv kev txhawb nqa rau lub suab Qhib Firmware tshiab tivthaiv npe lub npe. Nres ntxuav lub ATM Ambassador tsav tsheb, uas raug tshem tawm ntawm lub ntsiav. Kev tswj xyuas blob tu hauv HDCP thiab Mellanox Core tau raug tsiv mus rau cais cov cim npe kconfig.

Tau qhov twg los: opennet.ru

Ntxiv ib saib