Linux kernel release 5.11

Nei twa moannen fan ûntwikkeling presintearre Linus Torvalds de frijlitting fan 'e Linux kernel 5.11. Under de meast opfallende feroarings: stipe foar Intel SGX-enklaves, in nij meganisme foar it ûnderskeppen fan systeemoproppen, in firtuele helpbus, in ferbod op it gearstallen fan modules sûnder MODULE_LICENSE(), in rappe filtermodus foar systeemoproppen yn seccomp, beëiniging fan stipe foar de ia64 arsjitektuer, oerdracht fan WiMAX technology oan de "staging" tûke, de mooglikheid om encapsulate SCTP yn UDP.

De nije ferzje omfettet 15480 fixes fan 1991 ûntwikkelders, de patchgrutte is 72 MB (de feroaringen beynfloede 12090 bestannen, 868025 rigels koade waarden tafoege, 261456 rigels waarden wiske). Ungefear 46% fan alle wizigingen yntrodusearre yn 5.11 binne relatearre oan apparaatbestjoerders, sawat 16% fan feroaringen binne relatearre oan it bywurkjen fan koade spesifyk foar hardware-arsjitektuer, 13% binne relatearre oan de netwurkstapel, 3% binne relatearre oan triemsystemen, en 4% binne relatearre oan ynterne kernel-subsystemen.

Wichtichste ynnovaasjes:

  • Skiif subsysteem, I / O en triem systemen
    • Ferskate mounting-opsjes binne tafoege oan Btrfs foar gebrûk by it herstellen fan gegevens fan in skansearre bestânsysteem: "rescue=ignorebadroots" foar mounting, nettsjinsteande skea oan guon woartelbeammen (omfang, uuid, gegevensferhuzing, apparaat, csum, frije romte), " rescue=ignoredatacsums” om it kontrolearjen fan checksum foar gegevens út te skeakeljen en "rescue=all" om tagelyk de modi 'ignorebadroots', 'ignoredatacsums' en 'nologreplay' yn te skeakeljen. De "inode_cache" mount-opsje, dy't earder ôfkard waard, is stopset. De koade is taret om stipe te ymplementearjen foar blokken mei metadata en gegevens dy't lytser binne as in sidegrutte (PAGE_SIZE), en ek stipe foar sône romte-allokaasjemodus. Unbufferde (Direct IO) oanfragen binne ferpleatst nei de iomap-ynfrastruktuer. De prestaasjes fan in oantal operaasjes binne optimalisearre; yn guon gefallen kin de fersnelling tsientallen persint berikke.
    • XFS ymplementearret de flagge "needsrepair", dy't de needsaak foar reparaasje sinjalearret. As dizze flagge ynsteld is, kin it bestânsysteem net oanmakke wurde oant de flagge weromset is troch it xfs_repair-helpprogramma.
    • Ext4 biedt allinich bugfixes en optimalisaasjes, lykas opromjen fan koade.
    • Re-eksportearje fan bestânsystemen monteard oer NFS is tastien (d.w.s. in partysje monteare fia NFS kin no wurde eksportearre fia NFS en brûkt as tuskenlizzende cache).
    • De close_range()-systeemoprop, wêrtroch in proses in hiele oanbod fan iepen triembeskriuwers tagelyk kin slute, hat in CLOSE_RANGE_CLOEXEC-opsje tafoege om beskriuwers te sluten yn close-on-exec-modus.
    • It F2FS-bestânsysteem foeget nije ioctl ()-oproppen ta om kontrôle fan brûkersromte te tastean oer hokker bestannen yn komprimearre foarm wurde opslein. Tafoege "compress_mode=" mount-opsje om te kiezen of de kompresjehanneler oan 'e kernelkant of yn brûkersromte pleatst wurde sil.
    • Biede de mooglikheid om Overlays te mount troch unprivileged prosessen mei in aparte brûkersnammeromte. Om it neilibjen fan 'e ymplemintaasje fan' e feiligensmodel te kontrolearjen, waard in folsleine koadekontrôle útfierd. Overlayfs foeget ek de mooglikheid ta om te rinnen mei kopyen fan triemsysteemôfbyldings troch opsjoneel út te skeakeljen UUID-kontrôle.
    • It Ceph-bestânsysteem hat stipe tafoege foar it msgr2.1-protokol, wêrtroch it gebrûk fan it AES-GCM-algoritme by it ferstjoeren fan gegevens yn fersifere foarm mooglik is.
    • De dm-multipath-module ymplementearret de mooglikheid om rekken te hâlden mei CPU-affiniteit ("IO-affiniteit") by it kiezen fan de rûte foar I/O-oanfragen.
  • Unthâld en systeem tsjinsten
    • In nij systeem oprop ûnderskepping meganisme is tafoege, basearre op prctl (), dat kinne jo generearje útsûnderings út brûkersromte by tagong ta in spesifike systeem oprop en emulearje de útfiering dêrfan. Dizze funksjonaliteit is fereaske yn Wine en Proton om Windows-systeemoproppen te emulearjen, wat nedich is om kompatibiliteit te garandearjen mei spultsjes en programma's dy't direkt systeemoproppen útfiere dy't de Windows API omgeane (bygelyks om te beskermjen tsjin net autorisearre gebrûk).
    • De systeemoprop userfaultfd(), ûntworpen om sidefouten (tagong ta net-allokearre ûnthâldsiden) yn brûkersromte te behanneljen, hat no de mooglikheid om útsûnderingshanneling dy't op it kearnnivo foarkomt, út te skeakeljen om it dreger te meitsjen om bepaalde kwetsberens te eksploitearjen.
    • It BPF-subsysteem hat stipe tafoege foar taak-lokale opslach, dy't gegevensferbining leveret oan in spesifike BPF-handler.
    • De boekhâlding fan ûnthâld konsumpsje troch BPF programma is hielendal opnij ûntwurpen - in cgroup controller is foarsteld ynstee fan memlock rlimit foar in behear ûnthâld gebrûk yn BPF objekten.
    • De BTF (BPF Type Format) meganisme, dat jout type kontrôle ynformaasje yn BPF pseudocode, jout stipe foar kernel modules.
    • Tafoege stipe foar shutdown (), renameat2 () en unlinkat () systeem ropt oan de io_uring asynchronous I / O ynterface. Wannear't ropt io_uring_enter (), de mooglikheid om te spesifisearje in timeout is tafoege (jo kinne kontrolearje stipe foar it argumint foar in spesifisearje in timeout mei help fan de flagge IORING_FEAT_EXT_ARG).
    • De ia64-arsjitektuer brûkt yn Intel Itanium-processors is ferpleatst nei de weeskategory, wat betsjuttet dat testen is ophâlden. Hewlett Packard Enterprise stoppe mei it akseptearjen fan oarders foar nije Itanium-apparatuer, en Intel die dat ferline jier.
    • Stipe foar systemen basearre op de MicroBlaze-arsjitektuer dy't gjin ûnthâldbehear-ienheid (MMU) omfetsje, is staakt. Sokke systemen binne net sjoen yn it deistich libben foar in lange tiid.
    • Foar de MIPS-arsjitektuer is stipe foar testen fan koadedekking tafoege mei it gcov-hulpprogramma.
    • Stipe tafoege foar de firtuele helpbus foar ynterfacing mei multyfunksjonele apparaten dy't funksjonaliteit kombinearje dy't ferskate bestjoerders nedich binne (Bygelyks netwurkkaarten mei Ethernet- en RDMA-stipe). De bus kin brûkt wurde om in primêr en sekundêr bestjoerder oan in apparaat te jaan, yn situaasjes dêr't it gebrûk fan it subsysteem MFD (Multi-Function Devices) problematysk is.
    • Foar de RISC-V-arsjitektuer is stipe tafoege foar it CMA (Contiguous Memory Allocator) ûnthâld-allokaasjesysteem, dat is optimalisearre foar it tawizen fan grutte oanlizzende ûnthâldgebieten mei techniken foar beweging fan ûnthâldpagina's. Foar RISC-V wurde ark ek ymplementearre om tagong ta /dev/mem te beheinen en rekken te hâlden mei ûnderbrekkingsferwurkingstiid.
    • Foar 32-bit ARM-systemen is stipe tafoege foar it KASan (Kernel address Sanizer) debuggen-ark, dat helpt by it identifisearjen fan flaters by it wurkjen mei ûnthâld. Foar 64-bit ARM is de KASan-ymplemintaasje omboud om MTE-tags (MemTag) te brûken.
    • Added epoll_pwait2 () systeem oprop te tastean timeouts mei nanosecond precision (epoll_wait call manipulates millisekonden).
    • It bousysteem toant no in flater by it besykjen om laden kearnmodules te bouwen wêryn de koadelisinsje net definiearre is mei de MODULE_LICENSE() makro. Fan no ôf sil it brûken fan de makro EXPORT_SYMBOL () foar statyske funksjes ek in buildflater feroarsaakje.
    • Stipe tafoege foar it yn kaart bringen fan GEM-objekten út ûnthâld brûkt foar I / O, wat it mooglik makke om wurk mei de framebuffer op guon arsjitektuer te fersnellen.
    • Kconfig hat stipe foar Qt4 sakke (wylst stipe foar Qt5, GTK en Ncurses behâlde).
  • Virtualisaasje en feiligens
    • Stipe foar in flugge antwurd modus is tafoege oan de seccomp () systeem oprop, dat kinne jo hiel fluch bepale oft in bepaalde systeem oprop is tastien of ferbean basearre op de konstante-aksje bitmap taheakke oan it proses, dat net nedich rinnende in BPF handler.
    • Yntegreare kernelkomponinten foar it meitsjen en behearen fan enklaves basearre op Intel SGX (Software Guard eXtensions) technology, wêrtroch applikaasjes koade kinne útfiere yn isolearre fersifere gebieten fan ûnthâld, dêr't de rest fan it systeem beheinde tagong hat.
    • As ûnderdiel fan in inisjatyf om tagong te beheinen fan brûkersromte nei it MSR (modelspesifike register), skriuwen nei it MSR_IA32_ENERGY_PERF_BIAS-register, wêrtroch jo de enerzjy-effisjinsjemodus fan 'e prosessor kinne feroarje ("normaal", "prestaasjes", "powersave"). , is ferbean.
    • De mooglikheid om de migraasje fan taken mei hege prioriteit tusken CPU's út te skeakeljen is ferpleatst fan 'e kernel-rt branch foar real-time systemen.
    • Foar ARM64-systemen is de mooglikheid om MTE-tags (MemTag, Memory Tagging Extension) te brûken foar ûnthâldadressen foar sinjaalhannelers tafoege. It brûken fan MTE is ynskeakele troch it spesifisearjen fan de SA_EXPOSE_TAGBITS-opsje yn sigaction() en lit jo it juste gebrûk fan oanwizers kontrolearje om de eksploitaasje fan kwetsberens te blokkearjen dy't feroarsake binne troch tagong te krijen ta al frijmakke ûnthâldblokken, bufferoverflows, tagongen foar inisjalisaasje en gebrûk bûten de hjoeddeistige kontekst.
    • De parameter "DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING" tafoege, wêrtroch it dm-verity-subsysteem hash-hântekeningen kin kontrolearje fan sertifikaten pleatst yn 'e sekundêre kaairing. Yn 'e praktyk lit de opset jo net allinich sertifikaten ynboud yn' e kernel ferifiearje, mar ek sertifikaten laden tidens operaasje, wat it mooglik makket om sertifikaten te aktualisearjen sûnder de heule kernel te aktualisearjen.
    • Brûkermodus Linux hat stipe tafoege foar suspend-to-idle-modus, wêrtroch jo de omjouwing kinne befrieze en it SIGUSR1-sinjaal brûke om wekker te wurden út sliepmodus.
    • It virtio-mem-meganisme, wêrmei jo ûnthâld kinne hot-plug en loskeppelje oan firtuele masines, hat stipe tafoege foar Big Block Mode (BBM), dy't it mooglik makket om ûnthâld oer te bringen of te nimmen yn blokken grutter dan de grutte fan it kernelûnthâld blok, dat is nedich om te optimalisearjen VFIO yn QEMU.
    • Stipe foar it CHACHA20-POLY1305-siffer is tafoege oan de kernel-ymplemintaasje fan TLS.
  • Netwurk subsysteem
    • Foar 802.1Q (VLAN) is in meganisme foar ferbiningsfeiligensbehear (CFM, Connectivity Fault Management) ymplementearre, wêrtroch jo flaters kinne identifisearje, ferifiearje en isolearje yn netwurken mei firtuele brêgen (Virtual Bridged Networks). Bygelyks, CFM kin brûkt wurde om problemen te isolearjen yn netwurken dy't oer meardere ûnôfhinklike organisaasjes spanne wêrfan de meiwurkers allinich tagong hawwe ta har eigen apparatuer.
    • Stipe tafoege foar it ynkapseljen fan SCTP-protokolpakketten yn UDP-pakketten (RFC 6951), wêrtroch jo SCTP kinne brûke op netwurken mei âldere adresoersetters dy't SCTP net direkt stypje, en ek SCTP implementearje op systemen dy't gjin direkte tagong jouwe ta de IP laach.
    • De ymplemintaasje fan WiMAX-technology is ferpleatst nei staging en wurdt pland foar ferwidering yn 'e takomst as d'r gjin brûkers binne dy't WiMAX nedich binne. WiMAX wurdt net mear brûkt yn iepenbiere netwurken, en yn 'e kearn is de ienige bestjoerder wêrmei WiMAX brûkt wurde kin de ferâldere Intel 2400m-bestjoerder. WiMAX-stipe waard yn 2015 stopset yn 'e NetworkManager netwurkkonfigurator. Op it stuit wurdt WiMax hast folslein ferfongen troch technologyen lykas LTE, HSPA+ en Wi-Fi 802.11n.
    • Der is wurk dien om de prestaasjes te optimalisearjen fan it ferwurkjen fan ynkommende TCP-ferkear yn nulkopymodus, d.w.s. sûnder ekstra kopiearjen nei nije buffers. Foar middelgrutte ferkear, covering tsientallen of ferskate hûnderten kilobytes fan gegevens, mei help fan nulkopy ynstee fan recvmsg () is merkber effektiver. Bygelyks, de ymplemintearre wizigingen makken it mooglik om de effisjinsje te fergrutsjen fan it ferwurkjen fan ferkear yn RPC-styl mei 32 KB-berjochten by it brûken fan nulkopy mei 60-70%.
    • Nije ioctl ()-oproppen tafoege om netwurkbrêgen te meitsjen dy't meardere PPP-keppelings oerspant. De foarstelde mooglikheid lit frames fan it iene kanaal nei it oare ferpleatse, bygelyks fan in PPPoE nei in PPPoL2TP-sesje.
    • Yntegraasje yn 'e kearn fan MPTCP (MultiPath TCP), in útwreiding fan it TCP-protokol foar it organisearjen fan de wurking fan in TCP-ferbining mei de levering fan pakketten tagelyk lâns ferskate rûtes fia ferskate netwurkynterfaces ferbûn mei ferskate IP-adressen. De nije release yntroduseart stipe foar de ADD_ADDR-opsje om beskikbere IP-adressen te advertearjen dy't kinne wurde ferbûn by it tafoegjen fan nije streamen oan in besteande MPTCP-ferbining.
    • De mooglikheid tafoege om aksjes te konfigurearjen as it budzjet foar ferbining polling wurdt oerschreden (drokke polling). De earder beskikbere SO_BUSY_POLL-modus betsjutte oerstap nei softirq doe't it budzjet útput wie. Foar applikaasjes dy't moatte trochgean mei it brûken fan polling, wurdt in nije opsje SO_PREFER_BUSY_POLL foarsteld.
    • IPv6 ymplementearret stipe foar SRv6 End.DT4 en End.DT6 modus, brûkt foar it meitsjen fan multi-brûker IPv4 L3 VPN's en VRF (Virtual routing and forwarding) apparaten.
    • Netfilter ferienige de ymplemintaasje fan set-útdrukkingen, wat it mooglik makke om meardere útdrukkingen foar elk elemint fan setlisten op te jaan.
    • API's binne tafoege oan 'e 802.11-draadloze stack om SAR-krêftgrinzen te konfigurearjen, lykas AE PWE- en HE MCS-parameters. De Intel iwlwifi-bestjoerder hat stipe tafoege foar it 6GHz (Ultra High Band) berik. De Qualcomm Ath11k-bestjoerder hat stipe tafoege foar FILS (Fast Initial Link Setup, standerdisearre as IEEE 802.11ai) technology, wêrtroch jo roamingfertragingen kinne kwytreitsje by migraasje fan it iene tagongspunt nei it oare.
  • Wetter - Agrarwetter
    • De amdgpu-bestjoerder leveret stipe foar AMD "Green Sardine" APU (Ryzen 5000) en "Dimgrey Cavefish" GPU (Navi 2), lykas ek inisjele stipe foar AMD Van Gogh APU mei Zen 2-kearn en RDNA 2 GPU (Navi 2). Stipe tafoege foar nije Renoir APU-identifikaasjes (basearre op Zen 2 CPU en Vega GPU).
    • De i915-bestjoerder foar Intel-fideokaarten stipet IS (Integer-skaalfergrutting) technology mei de ymplemintaasje fan in filter foar it fergrutsjen fan de skaal mei rekken hâldend mei de steat fan oanbuorjende piksels (nearest-neighbor ynterpolaasje) om de kleur fan ûntbrekkende piksels te bepalen. Stipe foar Intel DG1 diskrete kaarten is útwreide. Stipe foar "Big Joiner" technology is ymplementearre, dy't oanwêzich is sûnt Ice Lake / Gen11-chips en lit it gebrûk fan ien transcoder twa streamen ferwurkje, bygelyks foar útfier nei in 8K-skerm fia ien DisplayPort. In modus tafoege foar asynchronous wikseljen tusken twa buffers yn fideoûnthâld (async flip).
    • De nouveau-bestjoerder hat inisjele stipe tafoege foar NVIDIA GPU's basearre op de Ampere-mikroarsjitektuer (GA100, GeForce RTX 30xx), oant no ta beheind ta ark foar it kontrolearjen fan fideomodi.
    • Stipe tafoege foar it 3WIRE-protokol brûkt yn LCD-panielen. Stipe tafoege foar novatek nt36672a, TDO tl070wsh30, Innolux N125HCE-GN1 en ABT Y030XX067A 3.0 panielen. Apart kinne wy ​​​​opmerke de stipe foar it paniel fan OnePlus 6 en 6T smartphones, dy't makke it mooglik om te organisearjen it laden fan in net wizige kernel op apparaten.
    • Stipe tafoege foar Intel's earste diskrete USB4-hostcontroller, Maple Ridge.
    • Stipe tafoege foar Allwinner H6 I2S, Analoge apparaten ADAU1372, Intel Alderlake-S, GMediatek MT8192, NXP i.MX HDMI en XCVR, Realtek RT715 en Qualcomm SM8250 audio codecs.
    • Stipe tafoege foar ARM-boards, apparaten en platfoarms: Galaxy Note 10.1, Microsoft Lumia 950 XL, NanoPi R1, FriendlyArm ZeroPi, Elimo Initium SBC, Broadcom BCM4908, Mediatek MT8192/MT6779/MT8167, MStar InvotonNPM, 2 Mikrotik basearre op Marvell Prestera 730DX382, servers mei Nuvoton NPCM98 BMC, Kontron i.MX3236M Mini, Espressobin Ultra, "Trogdor" Chromebook, Kobol Helios750, Engicam PX8.Core.
    • Ynboude stipe foar de Ouya-gamingkonsole basearre op NVIDIA Tegra 3.

Tagelyk foarme de Latynsk-Amerikaanske Free Software Foundation in ferzje fan 'e folslein fergese 5.11-kernel - Linux-libre 5.11-gnu, wiske fan eleminten fan firmware en bestjoerders dy't net-frije komponinten as koade-seksjes befetsje, wêrfan it berik beheind is troch de fabrikant. De nije release skjinmakket bestjoerders foar qat_4xxx (crypto), lt9611uxcm (dsi / hdmi brêge), ccs / smia ++ (sensor), ath11k_pci, nxp audio transceiver en mhi pci controller. Updated blob skjinmeitsjen koade yn bestjoerders en subsystemen amdgpu, btqca, btrtl, btusb, i915 csr. Utskeakele nije blobs yn m3 rproc, idt82p33 ptp klok en qualcomm arm64.

Boarne: opennet.ru

Add a comment