Linux Kernel tso tawm 5.8

Tom qab ob lub hlis ntawm txoj kev loj hlob, Linus Torvalds tswvcuab kernel tso tawm Linux 5.8. Ntawm cov kev hloov pauv tseem ceeb tshaj plaws: KCSAN haiv neeg kuaj mob, lub tshuab thoob ntiaj teb rau kev xa cov ntawv ceeb toom rau cov neeg siv qhov chaw, kho vajtse txhawb rau inline encryption, txhim kho kev ruaj ntseg mechanisms rau ARM64, kev txhawb nqa rau Lavxias teb sab Baikal-T1 processor, muaj peev xwm cais mount procfs piv txwv. , Kev siv ntawm Duab ntxoov ntxoo kev ruaj ntseg mechanisms rau ARM64 Hu Pawg thiab BTI.

Kernel 5.8 tau dhau los ua qhov loj tshaj plaws nyob rau hauv cov nqe lus ntawm cov kev hloov pauv ntawm tag nrho cov kernels thaum lub sijhawm tag nrho ntawm qhov project. Tsis tas li ntawd, cov kev hloov pauv tsis cuam tshuam nrog ib qho subsystem, tab sis npog qhov sib txawv ntawm cov ntsiav thiab feem ntau cuam tshuam nrog kev rov ua haujlwm sab hauv thiab tu. Cov kev hloov loj tshaj plaws yog pom hauv cov tsav tsheb. Tus tshiab version suav nrog 17606 kho los ntawm 2081 tus tsim tawm, uas cuam tshuam txog li 20% ntawm tag nrho cov ntaub ntawv hauv cov ntaub ntawv khaws cia hauv lub ntsiav. Lub thaj loj yog 65 MB (qhov kev hloov pauv cuam tshuam rau 16180 cov ntaub ntawv, 1043240 kab ntawm cov lej tau ntxiv, 489854 kab raug tshem tawm). Los ntawm kev sib piv, 5.7 ceg ntoo muaj 15033 kho thiab thaj loj ntawm 39 MB. Kwv yees li 37% ntawm tag nrho cov kev hloov pauv tau qhia hauv 5.8 muaj feem cuam tshuam 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, 11% cuam tshuam nrog pawg network, 3% cuam tshuam nrog cov ntaub ntawv, thiab 4% muaj feem xyuam rau cov kernel subsystems.

ntsiab kev tsim kho tshiab:

  • Virtualization thiab Kev Ruaj Ntseg
    • Kev thauj khoom ntawm kernel modules uas muaj ntu nrog cov lej hauv cov khoom uas tso cai rau kev ua tiav thiab sau ntawv yog muab ib txhij. Qhov kev hloov pauv tau siv los ua ib feem ntawm txoj haujlwm loj dua los tshem tawm cov ntsiav ntawm kev siv cov nplooj ntawv nco uas tso cai rau kev ua tiav ib txhij thiab sau ntawv.
    • Nws yog tam sim no muaj peev xwm los tsim cais procfs piv txwv, tso cai rau siv ntau yam procfs mount cov ntsiab lus, mounted nrog cov kev xaiv sib txawv, tab sis xav txog cov txheej txheem tib lub npe qhov chaw (pid namespace). Yav dhau los, tag nrho cov procfs mount cov ntsiab lus tsuas yog mirrored ib tus sawv cev sab hauv, thiab ib qho kev hloov pauv rau lub mount tsis cuam tshuam tag nrho lwm cov ntsiab lus mount cuam tshuam nrog tib txheej txheem ID namespace. Ntawm cov cheeb tsam uas mounting nrog cov kev xaiv sib txawv tej zaum yuav xav tau yog qhov kev siv ntawm kev sib cais sib cais rau embedded systems nrog lub peev xwm los nkaum qee yam txheej txheem thiab cov ntaub ntawv nodes hauv procfs.
    • Kev them nyiaj yug rau lub tshuab tau siv rau ARM64 platform
      Duab ntxoov ntxoo-Call Stack, muab los ntawm Clang compiler los tiv thaiv overwriting qhov chaw nyob xa rov qab ntawm ib qho kev ua haujlwm nyob rau hauv qhov xwm txheej ntawm pawg tsis dhau. Lub ntsiab lus ntawm kev tiv thaiv yog kom txuag tau qhov chaw nyob xa rov qab rau hauv ib qho "duab ntxoov ntxoo" cais tom qab hloov kev tswj mus rau qhov muaj nuj nqi thiab rov qab qhov chaw nyob no ua ntej tawm ntawm txoj haujlwm.

    • Kev txhawb nqa kev qhia tau ntxiv rau ARM64 platform ARMv8.5-BTI (Branch Target Indicator) los tiv thaiv kev ua tiav ntawm cov lus qhia uas yuav tsum tsis txhob muab faib rau. Thaiv kev hloov pauv mus rau qhov tsis txaus ntseeg ntawm cov cai yog siv los tiv thaiv kev tsim cov khoom siv hauv kev siv cov txheej txheem rov qab los qhia txog kev ua haujlwm (ROP - Rov qab-Oriented Programming; tus neeg tawm tsam tsis sim tso nws cov cai hauv lub cim xeeb, tab sis ua haujlwm ntawm cov khoom uas twb muaj lawm. ntawm cov lus qhia ntawm lub tshuab uas xaus nrog cov lus qhia tswj kev rov qab los, los ntawm cov saw hlau hu ua kom tau txais qhov xav tau ua haujlwm).
    • Ntxiv kho vajtse txhawb rau inline encryption ntawm thaiv cov cuab yeej (Inline Encryption). Inlinep encryption li feem ntau yog tsim rau hauv tus tsav, tab sis yog qhov muaj txiaj ntsig nyob nruab nrab ntawm lub cim xeeb thiab disk, pob tshab encrypting thiab decrypting I / O raws li cov yuam sij kernel thiab cov txheej txheem encryption.
    • Ntxiv cov "initrdmem" kernel hais kom ua kab kev xaiv tso cai rau koj los qhia meej lub cev nco chaw nyob ntawm initrd thaum tso cov duab thawj zaug hauv RAM.
    • Ntxiv peev xwm tshiab: CAP_PERFMON kom nkag mus rau perf subsystem thiab ua haujlwm saib xyuas. PAB_BPF, uas tso cai rau qee yam haujlwm BPF (xws li thauj khoom BPF cov kev pabcuam) uas yav dhau los xav tau CAP_SYS_ADMIN txoj cai (CAP_SYS_ADMIN txoj cai tam sim no tau faib ua ke ntawm CAP_BPF, CAP_PERFMON, thiab CAP_NET_ADMIN).
    • Ntxiv ib tug tshiab virtio-mem ntaus ntawv uas tso cai rau koj mus rau kub-plug thiab kub-plug nco rau hauv qhua systems.
    • Ua kom rov qab tau txais daim ntawv qhia kev ua haujlwm hauv /dev/mem yog tias tus tsav tsheb siv cov chaw nco sib tshooj.
    • Ntxiv kev tiv thaiv kev tiv thaiv CROSSTAlk/SRBDS, uas tso cai rau koj los kho cov txiaj ntsig ntawm qee cov lus qhia ua tiav ntawm lwm CPU core.
  • Kev pabcuam nco thiab system
    • Nyob rau hauv cov ntaub ntawv txhais cov cai rau formatting lub code, txais cov lus pom zoo rau kev siv cov ntsiab lus suav nrog. Cov neeg tsim tawm tsis pom zoo kom siv cov kev sib txuas 'tus tswv / qhev' thiab 'blacklist / whitelist', nrog rau lo lus ' qhev' cais. Cov lus pom zoo tsuas yog siv cov ntsiab lus tshiab xwb. Kev hais txog cov lus teev tseg uas twb muaj lawm nyob rau hauv cov tub ntxhais yuav nyob twj ywm untouched. Hauv cov cai tshiab, kev siv cov lus cim tau tso cai yog tias xav tau los txhawb API thiab ABI nthuav tawm hauv cov neeg siv chaw, nrog rau thaum hloov kho cov cai los txhawb cov khoom siv uas twb muaj lawm lossis cov txheej txheem uas nws cov lus qhia tshwj xeeb yuav tsum tau siv qee cov ntsiab lus.
    • Debugging cuab tam suav nrog KCSAN (Kernel Concurrency Sanitizer), tsim rau kev tshawb nrhiav dynamic haiv neeg tej yam kev mob hauv lub hauv paus. Kev siv KCSAN tau txais kev txhawb nqa thaum tsim hauv GCC thiab Clang, thiab yuav tsum muaj kev hloov kho tshwj xeeb ntawm lub sijhawm sib sau los taug qab kev nkag mus rau lub cim xeeb (cov ntsiab lus tawg yog siv uas tshwm sim thaum nco tau nyeem lossis hloov kho). Lub hom phiaj ntawm KCSAN txoj kev txhim kho yog ntawm kev tiv thaiv tsis zoo, kev ua kom muaj zog, thiab siv tau yooj yim.
    • Ntxiv universal mechanism xa cov ntawv ceeb toom los ntawm kernel mus rau tus neeg siv qhov chaw. Lub tshuab yog ua raws li tus qauv tsav cov yeeb nkab thiab tso cai rau koj kom faib cov ntawv ceeb toom los ntawm cov kernel hla cov channel qhib hauv cov neeg siv qhov chaw. Cov lus ceeb toom tau txais cov ntsiab lus yog cov kav dej uas tau qhib rau hauv hom tshwj xeeb thiab tso cai rau cov lus tau txais los ntawm cov ntsiav kom khaws cia hauv lub nplhaib tsis muaj zog. Kev nyeem ntawv yog ua los ntawm kev nyeem ntawv ib txwm muaj. Tus tswv channel txiav txim siab seb qhov chaw twg hauv cov ntsiav yuav tsum tau saib xyuas thiab tuaj yeem txhais lub lim kom tsis quav ntsej qee yam ntawm cov lus thiab cov xwm txheej. Ntawm cov xwm txheej, tsuas yog kev ua haujlwm nrog cov yuam sij tam sim no txhawb nqa, xws li ntxiv / tshem cov yuam sij thiab hloov lawv cov cwj pwm. Cov xwm txheej no tau npaj los siv hauv GNOME.
    • Kev txhim kho txuas ntxiv ntawm 'pidfd' kev ua haujlwm los pab tswj PID rov siv cov xwm txheej (pidfd cuam tshuam nrog cov txheej txheem tshwj xeeb thiab tsis hloov pauv, thaum PID tuaj yeem cuam tshuam nrog lwm cov txheej txheem tom qab cov txheej txheem tam sim no cuam tshuam nrog qhov PID txiav). Tus tshiab version ntxiv kev txhawb nqa rau kev siv pidfd los txuas cov txheej txheem rau namespaces (tso cai pidfd yuav tsum tau teev thaum ua tiav lub setns system hu). Siv pidfd tso cai rau koj los tswj cov kev txuas ntawm cov txheej txheem rau ntau hom namespaces nrog ib qho kev hu, txo tus naj npawb ntawm cov kev hu xov tooj tsim nyog thiab siv cov ntawv txuas hauv atomic hom (yog tias txuas rau ib qho ntawm cov npe tsis ua haujlwm, lwm tus yuav tsis txuas) .
    • Ntxiv ib qho tshiab hu rau faccessat2(), txawv ntawm
      faccessat() ib qho kev sib cav ntxiv nrog cov chij uas ua raws li POSIX cov lus pom zoo (yav dhau los cov chij no tau ua raws hauv C lub tsev qiv ntawv, thiab cov faccessat2 tshiab tso cai rau lawv ua raws li hauv cov ntsiav).

    • Hauv Cgroup ntxiv ib qho chaw memory.swap.high uas tuaj yeem siv los ua haujlwm qeeb uas siv qhov chaw sib pauv ntau dhau.
    • Mus rau asynchronous I / O interface io_ kev ntxiv kev txhawb nqa rau tee() system hu.
    • Ntxiv mechanism "BPF tus neeg sawv cev, tsim los tso tawm cov ntsiab lus ntawm cov qauv kernel rau cov neeg siv qhov chaw.
    • Muab muaj peev xwm siv lub nplhaib tsis rau cov ntaub ntawv sib pauv ntawm BPF cov kev pab cuam.
    • Nyob rau hauv lub mechanism pab, tsim los txhim kho kev ua haujlwm sib luag ntawm cov dej num hauv cov ntsiav, ntxiv kev txhawb nqa rau ntau txoj haujlwm nrog cov khoom sib npaug.
    • Nyob rau hauv lub pstore mechanism, uas tso cai rau koj kom txuag tau debugging cov ntaub ntawv hais txog qhov ua rau poob nyob rau hauv lub cim xeeb cheeb tsam uas tsis ploj ntawm reboots, ntxiv backend rau txuag cov ntaub ntawv los thaiv cov khoom siv.
    • Los ntawm PREEMPT_RT kernel ceg tsiv kev siv cov xauv hauv zos.
    • Ntxiv tshiab buffer allocation API (AF_XDP), aimed ntawm kev yooj yim sau ntawv ntawm network tsav tsheb nrog XDP (eXpress Data Path) kev txhawb nqa.
    • Rau RISC-V architecture, kev txhawb nqa rau kev debugging kernel Cheebtsam siv KGDB tau siv.
    • Ua ntej tso tawm 4.8, qhov yuav tsum tau muaj rau version ntawm GCC uas tuaj yeem siv los tsim cov ntsiav tau nce ntxiv. Hauv ib qho ntawm cov kev tshaj tawm tom ntej nws tau npaj los tsa lub bar rau GCC 4.9.
  • Disk subsystem, I / O thiab cov ntaub ntawv systems
    • Hauv Device Mapper ntxiv tshiab dm-ebs (emulate block size) handler, uas tuaj yeem siv los ua kom pom qhov me me ntawm cov logical block loj (piv txwv li, rau emulate 512-byte sectors ntawm 4K sector-loj disks).
    • F2FS cov ntaub ntawv tam sim no txhawb nqa compression siv LZO-RLE algorithm.
    • Hauv dm-crypt ntxiv kev txhawb nqa rau cov yuam sij encrypted.
    • Btrfs tau txhim kho kev tuav ntawm kev nyeem ntawv hauv hom I / O ncaj qha. Thaum mounting nrawm tshawb xyuas deleted subsections thiab directory sab laug yam tsis muaj niam txiv.
    • Ib qho "nodelete" parameter tau ntxiv rau CIFS, tso cai rau kev tso cai ib txwm kuaj ntawm lub server, tab sis txwv tsis pub tus neeg siv khoom tshem tawm cov ntaub ntawv lossis cov npe.
    • Ext4 tau txhim kho kev ua yuam kev ENOSPC thaum siv multithreading. xattr tau ntxiv kev txhawb nqa rau gnu.* namespace siv hauv GNU Hurd.
    • Rau Ext4 thiab XFS, kev txhawb nqa rau DAX kev ua haujlwm tau qhib (kev nkag ncaj qha rau cov ntaub ntawv kaw lus, hla nplooj ntawv cache yam tsis siv cov cuab yeej thaiv qib) cuam tshuam rau cov ntaub ntawv thiab cov npe.
    • Hauv qhov system hu statx() chij ntxiv STATX_ATTR_DAX, uas thaum teev tseg, khaws cov ntaub ntawv siv lub cav DAX.
    • EXFAT ntxiv kev them nyiaj yug rau khau raj cheeb tsam pov thawj.
    • Hauv FAT txhim kho proactive loading ntawm FS ntsiab. Kev sim qeeb 2TB USB tsav tau pom qhov txo qis hauv lub sijhawm ua tiav ntawm 383 txog 51 vib nas this.
  • Network subsystem
    • Nyob rau hauv txoj cai tswj kev ua haujlwm ntawm cov txuas txuas txuas ntxiv kev them nyiaj yug raws tu qauv MRP (Media Redundancy Protocol), uas tso cai rau kev ua txhaum cai los ntawm kev sib tw ntau Ethernet keyboards.
    • To Traffic Control System (Tc) ntxiv tshiab "lub rooj vag" nkaus, uas ua rau nws muaj peev xwm los txhais lub sij hawm ncua sij hawm rau kev ua thiab pov tseg tej pob ntawv.
    • Kev them nyiaj yug rau kev sim cov kab txuas txuas txuas thiab kev kuaj tus kheej ntawm cov khoom siv hauv network tau ntxiv rau cov ntsiav thiab cov khoom siv hluav taws xob ethtool.
    • Kev them nyiaj yug rau MPLS (Multiprotocol Label Switching) algorithm tau ntxiv rau IPv6 pawg rau kev xa cov pob khoom siv ntau daim ntawv lo hloov pauv (MPLS yav tas los txhawb rau IPv4).
    • Ntxiv kev txhawb nqa rau kev xa tawm IKE (Internet Key Exchange) thiab IPSec pob ntawv hla TCP (RFC 8229) kom hla dhau qhov ua tau UDP thaiv.
    • Ntxiv network thaiv cov cuab yeej rnbd, uas tso cai rau koj los teeb tsa cov chaw taws teeb nkag mus rau lub cuab yeej thaiv siv RDMA thauj (InfiniBand, RoCE, iWARP) thiab RTRS raws tu qauv.
    • Hauv TCP pawg ntxiv kev txhawb nqa rau ntau yam compression nyob rau hauv xaiv kev lees paub (SACK) cov lus teb.
    • Rau IPv6 ua raws Kev them nyiaj yug TCP-LD (RFC 6069, Kev Sib Txuas Ntev Ntev).
  • Khoom siv
    • Tus tsav tsheb i915 DRM rau Intel video phaib suav nrog kev txhawb nqa rau Intel Tiger Lake (GEN12) chips los ntawm lub neej ntawd, rau qhov twg ua raws muaj peev xwm siv SAGV (System Agent Geyserville) system los kho qhov zaus thiab qhov hluav taws xob nyob ntawm qhov kev siv hluav taws xob lossis kev ua haujlwm.
    • Tus tsav tsheb amdgpu tau ntxiv kev txhawb nqa rau FP16 pixel hom thiab muaj peev xwm ua haujlwm nrog encrypted buffers hauv video nco (TMZ, Trusted Memory Zone).
    • Ntxiv kev txhawb nqa rau lub zog sensors rau AMD Zen thiab Zen2 processors, nrog rau qhov ntsuas kub rau AMD Ryzen 4000 Renoir. Kev them nyiaj yug rau khaws cov ntaub ntawv siv hluav taws xob los ntawm kev sib cuam tshuam yog muab rau AMD Zen thiab Zen2 RAPL (Running Average Power Limit).
    • Ntxiv kev txhawb nqa rau NVIDIA hloov kho hom rau tus tsav tsheb Nouveau. Rau gv100, muaj peev xwm siv interlaced scanning hom tau siv. Ntxiv vGPU txhais.
    • Ntxiv kev txhawb nqa rau Adreno A405, A640 thiab A650 GPUs rau MSM (Qualcomm) tsav tsheb.
    • Ntxiv Cov txheej txheem sab hauv rau kev tswj hwm DRM (Direct Rendering Manager) cov peev txheej.
    • Ntxiv kev txhawb nqa rau Xiaomi Redmi Note 7 thiab Samsung Galaxy S2 smartphones, nrog rau Elm / Hana Chromebook laptops.
    • Ntxiv cov tsav tsheb rau LCD panels: ASUS TM5P5 NT35596, Starry KR070PE2T, Leadtek LTK050H3146W, Visionox rm69299, Boe tv105wum-nw0.
    • Ntxiv kev txhawb nqa rau ARM boards thiab platforms Renesas "RZ / G1H", Realtek RTD1195, Realtek RTD1395 / RTD1619, Rockchips RK3326, AMLogic S905D, S905X3, S922XH, Olimex A20-OLME-PolinuXino-LI,
      , Beacon i.MX8m-Mini, Qualcomm SDM660/SDM630, Xnano X5 TV Box, Stinger96, Beaglebone-AI.

    • Ntxiv kev txhawb nqa rau MIPS processor Loongson-2K (abbreviated Loongson64). Rau CPU Loongson 3, kev txhawb nqa rau virtualization siv KVM hypervisor tau ntxiv.
    • Ntxiv
      kev txhawb nqa rau Lavxias teb sab Baikal-T1 processor thiab system-on-chip raws li nws PEB-T1000. Baikal-T1 processor muaj ob lub P5600 MIPS 32 r5 superscalar cores ua haujlwm ntawm 1.2 GHz. Lub nti muaj L2 cache (1 MB), DDR3-1600 ECC nco maub los, 1 10Gb Ethernet chaw nres nkoj, 2 1Gb Ethernet ports, PCIe Gen.3 x4 maub los, 2 SATA 3.0 ports, USB 2.0, GPIO, UART, SPI, I2C. Lub processor muab kev txhawb nqa kho vajtse rau virtualization, SIMD cov lus qhia thiab kev sib koom ua ke kho vajtse cryptographic accelerator uas txhawb GOST 28147-89. Lub nti yog tsim los siv MIPS32 P5600 Warrior processor core unit tau ntawv tso cai los ntawm Imagination Technologies.

Tib lub sijhawm, Latin American Free Software Foundation tsim
kev xaiv kernel dawb kiag li 5.8 - Linux-libre 5.8-gnu, tshem tawm cov firmware thiab cov ntsiab lus tsav tsheb uas tsis muaj cov khoom tsis pub dawb lossis cov lej code, cov peev txheej uas txwv los ntawm cov chaw tsim khoom. Qhov kev tso tawm tshiab no cuam tshuam blob loading hauv cov tsav tsheb rau Atom ISP Video, MediaTek 7663 USB / 7915 PCIe, Realtek 8723DE WiFi, Renesas PCI xHCI, HabanaLabs Gaudi, Enhanced Asynchronous Sample Rate Converter, Maxim Integrated MAX98390 Microphone, Speaker A Home thiab I38060C EEPROM qhev. Hloov kho blob tu code hauv Adreno GPU, HabanaLabs Goya, x2 touchscreen, vt86 thiab btbcm tsav tsheb thiab subsystems.

Tau qhov twg los: opennet.ru

Ntxiv ib saib