Linux kernel release 5.2

Nei twa moannen fan ûntwikkeling, Linus Torvalds yntrodusearre kernel release Linux 5.2. Under de meast opfallende feroarings: Ext4-bestjoeringsmodus is case-onsensitive, apart systeem freget om it bestânsysteem te montearjen, drivers foar GPU Mali 4xx/ 6xx/7xx, de mooglikheid om feroaringen yn sysctl-wearden yn BPF-programma's te behanneljen, apparaat-mapper module dm-dust, beskerming tsjin oanfallen MDS, stipe foar Sound Open Firmware foar DSP, optimalisaasje fan BFQ-prestaasjes, bringt it PSI (Pressure Stall Information) subsysteem nei de mooglikheid fan gebrûk yn Android.

De nije ferzje omfettet 15100 fixes fan 1882 ûntwikkelders,
patchgrutte - 62 MB (feroarings beynfloede 30889 bestannen, 625094 rigels koade waarden tafoege, 531864 rigels waarden wiske). Sawat 45% fan alle presintearre yn 5.2
feroarings binne yn ferbân mei apparaat drivers, likernôch 21% fan feroarings hawwe
hâlding foar it bywurkjen fan koade spesifyk foar hardware-arsjitektuer, 12%
ferbân mei it netwurk stack, 3% oan triem systemen en 3% oan ynterne
kernel subsystemen. 12.4% fan alle wizigingen waarden taret troch Intel, 6.3% troch Red Hat, 5.4% troch Google, 4.0% troch AMD, 3.1% troch SUSE, 3% troch IBM, 2.7% troch Huawei, 2.7% troch Linaro, 2.2% troch ARM , 1.6 % - Oracle.

haad ynnovaasjes:

  • Skiif subsysteem, I / O en triem systemen
    • Taheakke foar Ext4 stypje wurkje sûnder it gefal fan karakters yn bestânsnammen te ûnderskieden, dy't allinich aktivearre is yn relaasje ta yndividuele lege mappen mei it nije attribút "+F" (EXT4_CASEFOLD_FL). As dit attribút is ynsteld op in map, sille alle operaasjes mei triemmen en submappen binnen wurde útfierd sûnder rekken te hâlden mei it gefal fan karakters, ynklusyf de saak sil wurde negearre by it sykjen en iepenjen fan triemmen (bygelyks de triemmen Test.txt, test.txt en test.TXT yn sokke mappen sille itselde wurde beskôge). Standert bliuwt it bestânsysteem haadlettergefoelich, mei útsûndering fan mappen mei it attribút "chattr + F";
    • Funksjes foar it ferwurkjen fan UTF-8-tekens yn bestânsnammen, dy't brûkt wurde by it útfieren fan stringfergeliking en normalisaasjeoperaasjes, binne ferienige;
    • XFS foeget ynfrastruktuer ta foar bestânsysteem sûnensmonitoring en in nije ioctl foar it freegjen fan sûnensstatus. In eksperimintele funksje is ymplementearre om superbloktellers online te kontrolearjen.
    • Nije module apparaat-mapper tafoege "dm-stof", wêrtroch jo it uterlik fan minne blokken op 'e media as flaters kinne simulearje by it lêzen fan skiif. De module kinne jo ferienfâldigje debuggen en testen fan applikaasjes en ferskate opslach systemen yn it gesicht fan mooglike flaters;
    • Útfierd Wichtige prestaasjesoptimalisaasjes foar de BFQ I/O-scheduler. Yn betingsten fan hege I / O load, optimizations makke talitte Ferminderje de tiid fan operaasjes lykas it starten fan applikaasjes mei maksimaal 80%.
    • In searje systeemoproppen tafoege foar it montearjen fan bestânsystemen: fsopen(), iepen_tree(), fspick(), fsmount(), fsconfig() и move_mount(). Dizze systeemoproppen kinne jo ferskate stadia fan mounting apart ferwurkje (ferwurkje it superblok, ynformaasje krije oer it bestânsysteem, mount, hechtsje oan it berchpunt), dy't earder waarden útfierd mei de mienskiplike mount () systeemoprop. Aparte oproppen jouwe de mooglikheid om kompleksere berch-senario's út te fieren en aparte operaasjes út te fieren, lykas it opnij konfigurearjen fan it superblok, opsjes ynskeakelje, it berchpunt feroarje en nei in oare nammeromte ferpleatse. Derneist, aparte ferwurking kinne jo sekuer bepale de redenen foar de útfier fan flater koades en set meardere boarnen foar multi-laach triem systemen, lykas overlays;
    • In nije operaasje IORING_OP_SYNC_FILE_RANGE is tafoege oan de ynterface foar asynchronous I/O io_uring, dy't aksjes útfiert lykweardich oan in systeemoprop sync_file_range(), en ek ymplementearre de mooglikheid om te registrearjen eventfd mei io_uring en ûntfange notifikaasjes oer it foltôgjen fan operaasjes;
    • Foar it CIFS-bestânsysteem is de FIEMAP ioctl tafoege, dy't effisjint mapping leveret, en ek stipe foar de SEEK_DATA- en SEEK_HOLE-modi;
    • Yn it FUSE-subsysteem foarsteld API foar it behearen fan gegevenscaching;
    • Btrfs hat de ymplemintaasje fan qgroups optimalisearre en ferbettere fsync-útfiersnelheid foar bestannen mei meardere hurde keppelings. De gegevensintegriteitskontrôlekoade is ferbettere, dy't no rekken hâldt mei mooglike skea oan ynformaasje yn RAM foardat gegevens nei skiif spoelen wurde;
    • CEPH tafoege stipe foar it eksportearjen fan snapshots fia NFS;
    • De ymplemintaasje fan NFSv4-mounting yn 'sêfte' modus is ferbettere (as in flater optreedt by it tagong ta de tsjinner yn 'sêfte' modus, jout in oprop om fuortendaliks in flaterkoade werom, en yn 'hurde' modus wurdt kontrôle net jûn oant de FS beskikberens of time-out wurdt hersteld). De nije release jout krekter timeout handling, flugger crash herstel, en in nije "softerr" mount opsje wêrmei jo te feroarjen de flater koade (ETIMEDOUT) werom as in time-out optreedt;
    • De nfsdcld API, ûntworpen om de steat fan NFS-kliïnten te folgjen, lit de NFS-tsjinner de steat fan 'e kliïnt korrekt folgje by herstart. Sa kin de nfsdcld daemon no fungearje as in nfsdcltrack handler;
    • Foar AFS tafoege emulaasje fan byte berik slûzen yn triemmen (Byte Range Locking);
  • Virtualisaasje en feiligens
    • Der is wurk dien om plakken yn 'e kearn te eliminearjen dy't koade útfiere kinne fan skriuwbere reflektearre ûnthâldgebieten, wêrtroch't potinsjele gatten blokkearje kinne dy't kinne wurde eksploitearre tidens in oanfal;
    • In nije kernel kommandorigelparameter "mitigations=" is tafoege, dy't in ferienfâldige manier biedt om it ynskeakeljen fan bepaalde techniken te kontrolearjen om te beskermjen tsjin kwetsberens ferbûn mei spekulative útfiering fan ynstruksjes op 'e CPU. It trochjaan fan "mitigations=off" skeakelet alle besteande metoaden út, en de standertmodus "mitigations=auto" makket beskerming mooglik, mar hat gjin ynfloed op it gebrûk fan Hyper Threading. De modus "mitigaasjes = auto,nosmt" skeakelt ek Hyper Threading út as fereaske troch de beskermingsmetoade.
    • Added stipe foar elektroanyske digitale hantekening neffens GOST R 34.10-2012 (RFC 7091, ISO / IEC 14888-3), ûntwikkele Vitaly Chikunov fan Basalt SPO. Stipe tafoege foar AES128-CCM oan 'e native TLS-ymplemintaasje. Stipe tafoege foar AEAD-algoritmen oan 'e crypto_simd-module;
    • Yn Kconfig tafoege in aparte seksje "kernel ferharding" mei opsjes om kernelbeskerming te ferbetterjen. Op it stuit befettet de nije seksje allinich ynstellings foar it ynskeakeljen fan GCC-kontrôleferbetterjende plugins;
    • De kernel koade is hast levere út net-breaking saak útspraken yn switch (sûnder werom of brek nei eltse saak blok). It bliuwt om 32 fan 2311 gefallen te reparearjen fan sa'n gebrûk fan skeakel, wêrnei't it mooglik is om de "-Wimplicit-fallthrough" modus te brûken by it bouwen fan de kernel;
    • Foar de PowerPC-arsjitektuer is stipe foar hardwaremeganismen foar it beheinen fan net-winske kernel tagongspaden nei gegevens yn brûkersromte ymplementearre;
    • Added blocking koade oanfallen MDS (Microarchitectural Data Sampling) klasse yn Intel processors. Jo kinne kontrolearje oft in systeem kwetsber is foar kwetsberens fia de SysFS-fariabele "/sys/devices/system/cpu/vulnerabilities/mds". Beskikber twa beskerming modi: fol, dat fereasket updated microcode, en bypass, dy't net hielendal garandearje wiskjen fan CPU buffers doe't kontrôle wurdt oerdroegen oan brûker romte of de gast systeem. Om beskermingsmodi te kontrolearjen, is de parameter "mds =" tafoege oan 'e kernel, dy't de wearden "fol", "fol, nosmt" (+ Hyper-Threads útskeakelje) en "út" kin nimme;
    • Op x86-64-systemen is "stack guard-page" beskerming tafoege foar IRQ, debuggenmeganismen en útsûnderingshannelers, wêrfan de essinsje it ferfangen is fan ûnthâldsiden oan 'e grins mei de stapel, tagong dy't liedt ta it generearjen fan in útsûndering (side-fout);
    • Added sysctl ynstelling vm.unprivileged_userfaultfd, dy't kontrolearret de mooglikheid fan unprivileged prosessen te brûken de userfaultfd () systeem oprop;
  • Netwurk subsysteem
    • Added IPv6-gateway-stipe foar IPv4-rûtes. Bygelyks, kinne jo no oantsjutte routing regels lykas "ip ro add 172.16.1.0/24 fia inet6 2001: db8:: 1 dev eth0";
    • Foar ICMPv6, ioctl ropt icmp_echo_ignore_anycast en icmp_echo_ignore_multicast wurde ymplementearre om ICMP ECHO te negearjen foar anycast en
      multicast adressen. Added de mooglikheid om de yntinsiteit fan ICMPv6-pakketferwurking te beheinen;

    • Foar it BATMAN (Better Approach To Mobile Adhoc Networking) meshprotokol, wêrtroch de skepping fan desintralisearre netwurken mooglik is wêryn elke knooppunt ferbûn is fia oanbuorjende knooppunten, tafoege stipe foar útstjoeren fan multicast nei unicast, lykas de mooglikheid om te kontrolearjen fia sysfs;
    • Yn ethool tafoege in nije Fast Link Down parameter, wêrmei jo te ferminderjen de tiid dy't duorret te ûntfangen ynformaasje oer in keppeling down evenemint foar 1000BaseT (ûnder normale omstannichheden is de fertraging oant 750ms);
    • Ferskynd kâns binding Foo-Over-UDP tunnels oan in spesifyk adres, netwurk ynterface of socket (earder bining waard dien allinnich troch in mienskiplike masker);
    • Yn 'e draadloze stack befeilige mooglikheid fan útfiering handlers
      OWE (Opportunistic Wireless Encryption) yn brûkersromte;

    • Yn Netfilter is stipe foar de inet-adresfamylje tafoege oan nat-keatlingen (jo kinne no bygelyks ien oersetregel brûke om ipv4 en ipv6 te ferwurkjen, sûnder de regels foar ipv4 en ipv6 te skieden);
    • In netlink tafoege it rezjym strikt foar strikte ferifikaasje fan 'e krektens fan alle berjochten en attributen, wêryn't de ferwachte grutte fan attributen net tastien is te oersjen en it tafoegjen fan ekstra gegevens oan 'e ein fan berjochten is ferbean;
  • Unthâld en systeem tsjinsten
    • De CLONE_PIDFD flagge is tafoege oan de kloon () systeem oprop, as oantsjutte, wurdt de triem beskriuwing "pidfd" identifisearre mei it oanmakke bern proses werom nei it âlder proses. Dizze triembeskriuwing kin bygelyks brûkt wurde om sinjalen te ferstjoeren sûnder eangst foar it rinnen yn in racebetingst (fuort nei it ferstjoeren fan it sinjaal kin de doel-PID befrijd wurde fanwege prosesbeëiniging en beset troch in oar proses);
    • Foar de twadde ferzje fan cgroups is de funksjonaliteit fan 'e freezer-controller tafoege, wêrmei jo wurk yn in cgroup stopje kinne en guon boarnen (CPU, I / O, en mooglik sels ûnthâld) tydlik frijmeitsje om oare taken út te fieren. Behear wurdt dien fia de cgroup.freeze en cgroup.events kontrôle triemmen yn de cgroup beam. Entry 1 yn cgroup.freeze befriest prosessen yn de hjoeddeiske cgroup en alle bern groepen. Sûnt freezing duorret wat tiid, in ekstra cgroup.events triem wurdt levere troch dêr't kinne jo fine út oer it foltôgjen fan de operaasje;
    • Befeilige eksportearje fan ûnthâld attributen taheakke oan elke knooppunt yn sysfs, wêrmei jo te bepalen fan brûkersromte de aard fan it ferwurkjen fan ûnthâld banken yn systemen mei heterogene ûnthâld;
    • It subsysteem PSI (Pressure Stall Information) is ferbettere, wêrtroch jo ynformaasje kinne analysearje oer de wachttiid foar it ûntfangen fan ferskate boarnen (CPU, ûnthâld, I / O) foar bepaalde taken of sets fan prosessen yn in cgroup. Mei help fan PSI, brûkers romte handlers kinne krekter skatte it nivo fan systeem load en fertraging patroanen yn ferliking mei Load Average. De nije ferzje jout stipe foar it ynstellen fan gefoelichheid drompels en de mooglikheid om te brûken de poll () oprop te ûntfangen notifikaasje dat de ynstelde drompels binne aktivearre foar in bepaalde perioade fan tiid. Dizze funksje lit Android ûnthâldtekoarten yn in ier stadium kontrolearje, de boarne fan problemen identifisearje en ûnbelangrike applikaasjes beëinigje sûnder problemen te feroarsaakjen dy't merkber binne foar de brûker. Wannear't stress testen, demonstrearre PSI-basearre ûnthâld konsumpsje monitoring ark 10 kear minder falske posityf fergelike mei vmpressure statistiken;
    • De koade foar it kontrolearjen fan BPF-programma's is optimalisearre, wêrtroch kontrôle oant 20 kear rapper mooglik is foar grutte programma's. Optimalisaasje makke it mooglik om de limyt op 'e grutte fan BPF-programma's te ferheegjen fan 4096 nei in miljoen ynstruksjes;
    • Foar BPF-programma's ferliend de mooglikheid om tagong te krijen ta globale gegevens, wêrtroch jo globale fariabelen en konstanten yn programma's kinne definiearje;
    • Added API, wêrmei jo feroaringen yn sysctl-parameters kinne kontrolearje fan BPF-programma's;
    • Foar de MIPS32-arsjitektuer is in JIT-kompiler foar de eBPF firtuele masine ymplementearre;
    • Foar de 32-bit PowerPC-arsjitektuer is stipe foar it KASan (Kernel-adres sanitizer) debuggen-ark tafoege, wat helpt by it identifisearjen fan flaters by it wurkjen mei ûnthâld;
    • Op x86-64-systemen is de beheining op it pleatsen fan steatdumpen by in kernelcrash (crash-dump) yn ûnthâldgebieten boppe 896MB fuortsmiten;
    • Foar de s390-arsjitektuer wurdt stipe foar randomisaasje fan kerneladresromte (KASLR) en de mooglikheid om digitale hantekeningen te ferifiearjen by it laden fan de kearn fia kexec_file_load () útfierd;
    • Foar de PA-RISC-arsjitektuer, tafoege stipe foar de kernel-debugger (KGDB), sprongmarken en kprobes;
  • Wetter - Agrarwetter
    • Bestjoerder ynbegrepen lima foar de Mali 400/450 GPU, brûkt yn in protte âldere chips basearre op de ARM-arsjitektuer. Foar nijere Mali GPU's is de Panfrost-bestjoerder tafoege, stipet chips basearre op Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) en Bifrost (Mali G3x, G5x, G7x) mikroarsjitektueren;
    • Stipe tafoege foar audio-apparaten mei iepen firmware Firmware foar lûd iepen (SOF). Nettsjinsteande de beskikberens fan iepen bestjoerders bleau de firmwarekoade foar lûdchips noch sletten en waard yn binêre foarm levere. It Sound Open Firmware-projekt waard ûntwikkele troch Intel om iepen firmware te meitsjen foar DSP-chips relatearre oan audioferwurking (Google die letter ek by de ûntwikkeling). Op it stuit hat it projekt de ûntdekking fan firmware al taret foar lûdchips fan 'e platfoarms Intel Baytrail, CherryTrail, Broadwell, ApolloLake, GeminiLake, CannonLake en IceLake;
    • Intel DRM-bestjoerder (i915) foeget stipe ta foar chips
      Elkhartlake (Gen11). PCI ID's tafoege foar Comet Lake (Gen9) chips. Stipe foar Icelake-chips is stabilisearre, wêrfoar ek ekstra PCI-apparaatidentifikaasjes binne tafoege.
      Oansetten
      modus fan asynchronous switching tusken twa buffers yn fideo ûnthâld (async flip) by it útfieren fan skriuwoperaasjes fia mmio, dy't gâns fergrutte de prestaasjes fan guon 3D applikaasjes (Bygelyks, prestaasjes yn de 3DMark Ice Storm test ferhege mei 300-400%). Technologystipe tafoege HDCP2.2 (Digitale ynhâldbeskerming mei hege bânbreedte) foar fersifering fan fideosinjalen oerstjoerd fia HDMI;

    • De amdgpu-bestjoerder foar Vega20 GPU tafoege stipe foar RAS (Reliability, Availability, Serviceability) en eksperimintele stipe foar de SMU 11 subsysteem, dy't ferfong Powerplay technology. Foar GPU Vega12 tafoege stipe foar BACO modus (Bus aktyf, Chip Off). Inisjele stipe tafoege foar XGMI, in bus mei hege snelheid (PCIe 4.0) foar GPU-ferbining. Untbrekkende identifiers tafoege foar kaarten basearre op Polaris10 GPU oan de amdkfd-bestjoerder;
    • De Nouveau-bestjoerder hat stipe tafoege foar boards basearre op de NVIDIA Turing 117-chipset (TU117, brûkt yn 'e GeForce GTX 1650). YN
      kconfig tafoege ynstelling om ferâldere funksjes út te skeakeljen dy't net mear wurde brûkt yn aktuele releases fan libdrm;

    • Stipe foar "tiidline" syngronisaasjeobjekten is tafoege oan de DRM API en de amdgpu-bestjoerder, wêrtroch jo sûnder klassike blokkearje kinne dwaan.
    • De vboxvideo-bestjoerder foar de VirtualBox firtuele GPU is ferpleatst fan 'e staging branch nei de haadstruktuer;
    • Added aspeed stjoerprogramma foar GFX SoC ASPEED chip;
    • Stipe tafoege foar ARM SoC en Intel Agilex (SoCFPGA), NXP i.MX8MM, Allwinner (RerVision H3-DVK (H3), Oceanic 5205 5inMFD, ,Beelink GS2 (H6), Orange Pi 3 (H6)), Rockchip (Orange Pi) ) boards RK3399, Nanopi NEO4, Veyron-Mighty Chromebook), Amlogic: SEI Robotics SEI510,
      ST Micro (stm32mp157a, stm32mp157c), NXP (
      Eckelmann ci4x10 (i.MX6DL),

      i.MX8MM EVK (i.MX8MM),

      ZII i.MX7 RPU2 (i.MX7),

      ZII SPB4 (VF610),

      Zii Ultra (i.MX8M),

      TQ TQMa7S (i.MX7Solo),

      TQ TQMa7D (i.MX7Dual),

      Kobo Aura (i.MX50),

      Menlosystems M53 (i.MX53)), NVIDIA Jetson Nano (Tegra T210).

Tagelyk, de Latin American Free Software Foundation foarme
opsje folslein fergese kernel 5.2 - Linux-libre 5.2-gnu, wiske fan firmware- en stjoerprogramma-eleminten dy't net-frije komponinten as koade-seksjes befetsje, wêrfan de omfang wurdt beheind troch de fabrikant. Nije release omfettet it uploaden fan bestannen
Sound Iepen Firmware. Laden fan blobs yn bestjoerders is útskeakele
mt7615, rtw88, rtw8822b, rtw8822c, btmtksdio, iqs5xx, ishtp en ucsi_ccg. De blobreinigingskoade yn 'e ixp4xx, imx-sdma, amdgpu, nouveau en goya-bestjoerders en subsystemen, lykas ek yn 'e mikrokoadedokumintaasje, is bywurke. Blob-reiniging yn 'e r8822be-bestjoerder is stoppe fanwegen it fuortheljen.

Boarne: opennet.ru

Add a comment