Linux 5.2 kjarnaútgáfa

Eftir tveggja mánaða þróun, Linus Torvalds kynnt kjarnaútgáfu Linux 5.2. Meðal áberandi breytinga: Ext4 rekstrarhamur er hástöfum-ónæmir, aðskilið kerfi kallar á uppsetningu skráarkerfisins, rekla fyrir GPU Mali 4xx/ 6xx/7xx, hæfni til að takast á við breytingar á sysctl gildum í BPF forritum, tækiskortari mát dm-dust, vörn gegn árásum MDS, stuðningur við Sound Open Firmware fyrir DSP, hagræðingu á afköstum BFQ, sem gerir PSI (Pressure Stall Information) undirkerfi möguleika á notkun í Android.

Nýja útgáfan inniheldur 15100 lagfæringar frá 1882 forriturum,
plástrastærð - 62 MB (breytingar höfðu áhrif á 30889 skrár, 625094 línum af kóða var bætt við, 531864 línum var eytt). Um 45% allra kynntar í 5.2
breytingar tengjast reklum tækja, um það bil 21% breytinga eru það
viðhorf til uppfærslu kóða sem er sértækur fyrir vélbúnaðararkitektúr, 12%
tengist netstafla, 3% skráarkerfum og 3% innri
kjarna undirkerfi. 12.4% allra breytinga voru undirbúnar af Intel, 6.3% af Red Hat, 5.4% af Google, 4.0% af AMD, 3.1% af SUSE, 3% af IBM, 2.7% af Huawei, 2.7% af Linaro, 2.2% af ARM , 1.6 % - Oracle.

Helstu nýjungar:

  • Diska undirkerfi, I/O og skráarkerfi
    • Bætt við fyrir Ext4 styðja vinna án þess að greina á milli stafa stafa í skráarheitum, sem er aðeins virkjað í tengslum við einstakar tómar möppur með því að nota nýja eiginleikann „+F“ (EXT4_CASEFOLD_FL). Þegar þessi eiginleiki er stilltur á möppu verða allar aðgerðir með skrár og undirmöppur inni í gangi án þess að taka tillit til hástafa stafa, þar með talið falla og falla verður hunsað við leit og opnun skráa (til dæmis skrárnar Test.txt, test.txt og test.TXT í slíkum möppum verða taldar eins). Sjálfgefið er að skráarkerfið heldur áfram að vera hástöfum, að undanskildum möppum með „chattr +F“ eigindinni;
    • Aðgerðir til að vinna úr UTF-8 stöfum í skráarnöfnum, sem eru notaðar þegar strengjasamanburður og staðlunaraðgerðir eru framkvæmdar, hafa verið sameinaðar;
    • XFS bætir við innviði fyrir heilsuvöktun skráakerfis og nýjum ioctl til að spyrjast fyrir um heilsufar. Tilraunaeiginleiki hefur verið innleiddur til að athuga ofurblokkateljara á netinu.
    • Bætt við nýjum einingum tæki-mapper "dm-ryk“, sem gerir þér kleift að líkja eftir útliti slæmra blokka á miðlinum eða villum við lestur af diski. Einingin gerir þér kleift að einfalda villuleit og prófanir á forritum og ýmsum geymslukerfum í ljósi hugsanlegra bilana;
    • Framkvæmt Mikilvægar hagræðingar á afköstum fyrir BFQ I/O tímaáætlun. Við aðstæður með mikið I/O álag, hagræðingar gerðar leyfa Draga úr aðgerðatíma eins og að opna forrit um allt að 80%.
    • Bætti við röð kerfiskalla til að setja upp skráarkerfi: fsopen(), opið_tré(), fspick(), fsmount(), fsconfig() и move_mount(). Þessi kerfiskall gera þér kleift að vinna sérstaklega úr mismunandi stigum uppsetningar (vinnsla ofurblokkinn, fá upplýsingar um skráarkerfið, tengja, festa við tengipunktinn), sem áður voru framkvæmd með því að nota common mount() kerfiskallið. Aðskilin símtöl gefa möguleika á að framkvæma flóknari uppsetningaratburðarás og framkvæma aðskildar aðgerðir eins og að endurstilla ofurblokkina, virkja valkosti, breyta tengipunkti og flytja í annað nafnrými. Að auki gerir aðskilin vinnsla þér kleift að ákvarða nákvæmlega ástæðurnar fyrir framleiðslu villukóða og stilla margar heimildir fyrir fjöllaga skráarkerfi, svo sem yfirlög;
    • Nýrri aðgerð IORING_OP_SYNC_FILE_RANGE hefur verið bætt við viðmótið fyrir ósamstillta I/O io_uring, sem framkvæmir aðgerðir sem jafngilda kerfiskalli sync_file_range(), og einnig innleitt hæfni til að skrá eventfd með io_uring og fá tilkynningar um lok aðgerða;
    • Fyrir CIFS skráarkerfið hefur FIEMAP ioctl verið bætt við, sem veitir skilvirka kortlagningu umfangs, sem og stuðning fyrir SEEK_DATA og SEEK_HOLE stillingarnar;
    • Í FUSE undirkerfinu lagt til API til að stjórna skyndiminni gagna;
    • Btrfs hefur fínstillt qgroups útfærsluna og bætt fsync keyrsluhraða fyrir skrár með mörgum hörðum hlekkjum. Gagnaheilleikaathugunarkóði hefur verið endurbættur, sem tekur nú tillit til hugsanlegra skemmda á upplýsingum í vinnsluminni áður en gögn eru skoluð á diskinn;
    • CEPH bætti við stuðningi við útflutning á skyndimyndum í gegnum NFS;
    • Útfærsla NFSv4 uppsetningar í „mjúkri“ ham hefur verið endurbætt (ef villa kemur upp við að fá aðgang að þjóninum í „mjúkri“ ham, þá skilar kall til strax villukóða og í „harðri“ stillingu er stjórn ekki gefin fyrr en FS framboð eða tímamörk er endurheimt). Nýja útgáfan veitir nákvæmari meðhöndlun á tímamörkum, hraðari endurheimt hruns og nýjan „mýkri“ festingarvalkost sem gerir þér kleift að breyta villukóðanum (ETIMEDOUT) sem skilað er þegar tíminn kemur;
    • nfsdcld API, hannað til að fylgjast með stöðu NFS viðskiptavina, gerir NFS þjóninum kleift að rekja rétt stöðu viðskiptavinarins við endurræsingu. Þannig getur nfsdcld púkinn nú virkað sem nfsdcltrack meðhöndlari;
    • Fyrir AFS bætt við eftirlíking af bætisviðslásum í skrám (Bætisviðslæsing);
  • Sýndarvæðing og öryggi
    • Unnið hefur verið að því að útrýma stöðum í kjarnanum sem leyfa keyrslu kóða frá skrifanlegum endurspegluðum minnissvæðum, sem gerir kleift að loka fyrir hugsanlegar holur sem gætu verið nýttar meðan á árás stendur;
    • Nýrri skipanalínubreytu kjarna "mitigations=" hefur verið bætt við, sem gefur einfaldaða leið til að stjórna virkjun ákveðinna aðferða til að verjast veikleikum sem tengjast íhugandi framkvæmd leiðbeininga á örgjörvanum. Með því að standast „mitigations=off“ óvirkar allar núverandi aðferðir og sjálfgefna stillingin „mitigations=auto“ gerir vernd kleift en hefur ekki áhrif á notkun Hyper Threading. „Mitigations=auto,nosmt“ hamurinn slekkur að auki á Hyper Threading ef þess er krafist af verndaraðferðinni.
    • Bætt við stuðningur við rafræna stafræna undirskrift samkvæmt GOST R 34.10-2012 (RFC 7091, ISO/IEC 14888-3), þróað af Vitaly Chikunov frá Basalt SPO. Bætti stuðningi við AES128-CCM við innfæddu TLS útfærsluna. Bætti stuðningi við AEAD reiknirit við crypto_simd eininguna;
    • Í Kconfig bætt við sérstakur „kjarnaherðandi“ hluti með valkostum til að auka kjarnavörn. Eins og er, inniheldur nýi hlutinn aðeins stillingar til að virkja GCC stöðvunarviðbætur;
    • Kjarnakóði er næstum afhent frá óbrjótandi málskýrslum í rofi (án endurkomu eða brots eftir hverja málsblokk). Eftir er að laga 32 af 2311 tilfellum af slíkri notkun á rofa, eftir það verður hægt að nota „-Wimplicit-fallthrough“ haminn þegar kjarnann er byggður;
    • Fyrir PowerPC arkitektúrinn hefur stuðningur við vélbúnaðarkerfi til að takmarka óæskilegar kjarnaaðgangsleiðir að gögnum í notendarými verið innleidd;
    • Bætt við blokkunarkóða árásir MDS (Microarchitectural Data Sampling) flokkur í Intel örgjörvum. Þú getur athugað hvort kerfi sé viðkvæmt fyrir veikleikum í gegnum SysFS breytuna "/sys/devices/system/cpu/vulnerabilities/mds". Laus tvær verndarstillingar: fullur, sem krefst uppfærðs örkóða, og framhjáhlaups, sem tryggir ekki alveg hreinsun á örgjörvabiðmunum þegar stjórn er flutt yfir á notendarými eða gestakerfið. Til að stjórna verndarstillingum hefur „mds=“ færibreytunni verið bætt við kjarnann, sem getur tekið gildin „full“, „full,nosmt“ (+ slökkva á Hyper-Threads) og „off“;
    • Á x86-64 kerfum hefur „stack guard-page“ vörn verið bætt við fyrir IRQ, villuleitarkerfi og undantekningarmeðhöndlun, kjarninn í því er að skipta út minnissíðum á landamærum stafla, aðgangur sem leiðir til myndunar á undantekning (síðuvilla);
    • Bætt við sysctl stillingu vm.unprivileged_userfaultfd, sem stjórnar getu óforréttindaferla til að nota userfaultfd() kerfiskallið;
  • Net undirkerfi
    • Bætt við Stuðningur við IPv6 gátt fyrir IPv4 leiðir. Til dæmis geturðu nú tilgreint leiðarreglur eins og "ip ro add 172.16.1.0/24 via inet6 2001:db8::1 dev eth0";
    • Fyrir ICMPv6 eru ioctl símtöl icmp_echo_ignore_anycast og icmp_echo_ignore_multicast útfærð til að hunsa ICMP ECHO fyrir anycast og
      fjölvarpsföng. Bætt við getu til að takmarka styrk ICMPv6 pakkavinnslu;

    • Fyrir BATMAN (Better Approach To Mobile Adhoc Networking) netsamskiptareglur, sem gerir kleift að búa til dreifð net þar sem hver hnút er tengdur í gegnum nálæga hnúta, bætt við stuðningur við útsendingar frá multicast til unicast, sem og getu til að stjórna í gegnum sysfs;
    • Í ettool bætt við nýja Fast Link Down færibreytu, sem gerir þér kleift að draga úr þeim tíma sem það tekur að fá upplýsingar um link down atburð fyrir 1000BaseT (undir venjulegum kringumstæðum er seinkunin allt að 750ms);
    • Birtist tækifæri að binda Foo-Over-UDP göng við ákveðið heimilisfang, netviðmót eða fals (áður var binding aðeins gerð með sameiginlegri grímu);
    • Í þráðlausa staflanum veitt möguleika á að innleiða meðhöndlun
      OWE (Opportunistic Wireless Encryption) í notendarými;

    • Í Netfilter hefur stuðningi fyrir inet vistfangafjölskylduna verið bætt við nat keðjur (til dæmis geturðu notað eina þýðingarreglu til að vinna úr ipv4 og ipv6, án þess að aðskilja reglurnar fyrir ipv4 og ipv6);
    • Í netlink bætt við háttur strangt fyrir stranga sannprófun á réttmæti allra skilaboða og eiginleika, þar sem ekki er leyfilegt að fara yfir væntanleg stærð eiginda og bönnuð er að bæta við viðbótargögnum í lok skilaboða;
  • Minni og kerfisþjónusta
    • CLONE_PIDFD fánanum hefur verið bætt við clone() kerfiskallið, þegar það er tilgreint er skráarlýsingin „pidfd“ sem auðkennd er með stofnaða undirferlinu skilað til foreldraferlisins. Þessa skráarlýsingu, til dæmis, er hægt að nota til að senda merki án þess að óttast að lenda í keppnisástandi (strax eftir að merkið hefur verið sent getur PID-markmiðið verið losað vegna stöðvunar ferlis og upptekið af öðru ferli);
    • Fyrir seinni útgáfuna af cgroups hefur virkni frystistýringarinnar verið bætt við, með því er hægt að stöðva vinnu í cgroup og losa tímabundið um tilföng (CPU, I/O, og hugsanlega jafnvel minni) til að framkvæma önnur verkefni. Stjórnun fer fram í gegnum cgroup.freeze og cgroup.events stýriskrárnar í cgroup trénu. Færsla 1 í cgroup.freeze frystir ferla í núverandi cgroup og öllum barnahópum. Þar sem frysting tekur nokkurn tíma, fylgir viðbótarskrá cgroup.events þar sem þú getur komist að því hvernig aðgerðinni er lokið;
    • Tryggt útflutningur á minniseigindum tengdum hverjum hnút í sysfs, sem gerir þér kleift að ákvarða úr notendarými eðli vinnslu minnisbanka í kerfum með ólíkt minni;
    • PSI (Pressure Stall Information) undirkerfið hefur verið endurbætt, sem gerir þér kleift að greina upplýsingar um biðtíma eftir að fá ýmis auðlindir (CPU, minni, I/O) fyrir ákveðin verkefni eða sett af ferlum í cgroup. Með því að nota PSI, geta stjórnendur notendarýmis metið nákvæmari kerfishleðslu og hægagangamynstur samanborið við álagsmeðaltal. Nýja útgáfan veitir stuðning við að setja næmniþröskulda og getu til að nota poll() símtalið til að fá tilkynningu um að settir þröskuldar hafi verið ræstir í ákveðinn tíma. Þessi eiginleiki gerir Android kleift að fylgjast með minnisskorti á frumstigi, bera kennsl á uppsprettu vandamála og stöðva ómikilvæg forrit án þess að valda vandamálum sem eru áberandi fyrir notandann. Við álagspróf sýndu PSI-undirstaða vöktunartæki fyrir minnisnotkun 10 sinnum færri rangar jákvæðar samanborið við vmpressure tölfræði;
    • Kóðinn til að athuga BPF forrit hefur verið fínstilltur, sem gerir kleift að athuga allt að 20 sinnum hraðar fyrir stór forrit. Hagræðing gerði það mögulegt að hækka takmörk á stærð BPF forrita úr 4096 í milljón leiðbeiningar;
    • Fyrir BPF forrit veitt getu til að fá aðgang að alþjóðlegum gögnum, sem gerir þér kleift að skilgreina alþjóðlegar breytur og fasta í forritum;
    • Bætt við API, sem gerir þér kleift að stjórna breytingum á sysctl breytum frá BPF forritum;
    • Fyrir MIPS32 arkitektúrinn hefur JIT þýðanda fyrir eBPF sýndarvélina verið útfært;
    • Fyrir 32-bita PowerPC arkitektúrinn hefur stuðningi við KASan (Kernel address sanitizer) kembiforritið verið bætt við, sem hjálpar til við að bera kennsl á villur þegar unnið er með minni;
    • Á x86-64 kerfum hefur takmörkunin á því að setja stöðuhögg við kjarnahrun (crash-dump) á minnissvæðum yfir 896MB verið fjarlægð;
    • Fyrir s390 arkitektúrinn er stuðningur við slembivalssvæði kjarna (KASLR) og getu til að sannreyna stafrænar undirskriftir þegar kjarnann er hlaðinn í gegnum kexec_file_load() innleiddur;
    • Fyrir PA-RISC arkitektúrinn bætti við stuðningi við kjarnakembiforritið (KGDB), stökkmerki og kprobes;
  • Оборудование
    • Bílstjóri fylgir Lima fyrir Mali 400/450 GPU, notað í mörgum eldri flísum byggt á ARM arkitektúr. Fyrir nýrri Mali GPUs hefur Panfrost drivernum verið bætt við, sem styður flögur byggðar á Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) og Bifrost (Mali G3x, G5x, G7x) örarkitektúr;
    • Bætt við stuðningi fyrir hljóðtæki sem nota opinn fastbúnað Hljóð Opinn fastbúnaður (SOF). Þrátt fyrir að opnir rekla séu tiltækir, var vélbúnaðarkóði fyrir hljóðflögur enn lokaður og var afhentur í tvöfaldri mynd. Sound Open Firmware verkefnið var þróað af Intel til að búa til opinn fastbúnað fyrir DSP flís sem tengist hljóðvinnslu (Google tók síðar einnig þátt í þróuninni). Eins og er hefur verkefnið þegar undirbúið uppgötvun á fastbúnaði fyrir hljóðflögur Intel Baytrail, CherryTrail, Broadwell, ApolloLake, GeminiLake, CannonLake og IceLake pallanna;
    • Intel DRM bílstjóri (i915) bætir við stuðningi við flís
      Elkhartlake (Gen11). Bætt við PCI auðkenni fyrir Comet Lake (Gen9) flögur. Stuðningur við Icelake-flögur hefur verið stöðugur, sem einnig hefur verið bætt við viðbótar PCI tækisauðkenni.
      Kveikt á
      ham fyrir ósamstilltur skiptingu á milli tveggja biðminni í myndminni (ósamstilltur flip) þegar skrifað er í gegnum mmio, sem jók verulega afköst sumra þrívíddarforrita (til dæmis jókst árangur í 3DMark Ice Storm prófinu um 3-300%). Bætt við tæknistuðning HDCP2.2 (High-bandwidth Digital Content Protection) til að dulkóða myndbandsmerki sem send eru um HDMI;

    • Amdgpu bílstjóri fyrir Vega20 GPU bætt við stuðningur við RAS (Reliability, Availability, Serviceability) og tilraunastuðningur fyrir SMU 11 undirkerfið, sem kom í stað Powerplay tækninnar. Fyrir GPU Vega12 bætt við stuðningur við BACO ham (Bus Active, Chip Off). Bætti við upphafsstuðningi fyrir XGMI, háhraða strætó (PCIe 4.0) fyrir samtengingu GPU. Bætti vantar auðkennum fyrir kort byggð á Polaris10 GPU við amdkfd bílstjórann;
    • Nouveau bílstjórinn hefur bætt við stuðningi við töflur byggðar á NVIDIA Turing 117 flís (TU117, notað í GeForce GTX 1650). IN
      kconfig bætt við stilling til að slökkva á úreltum aðgerðum sem eru ekki lengur notaðar í núverandi útgáfum af libdrm;

    • Stuðningur við „tímalínu“ samstillingarhluti hefur verið bætt við DRM API og amdgpu bílstjórann, sem gerir þér kleift að gera án klassískrar lokunar.
    • Vboxvideo bílstjórinn fyrir VirtualBox sýndar-GPU hefur verið færður úr sviðsetningargreininni í aðalbygginguna;
    • Bætt við aspeed reklum fyrir GFX SoC ASPEED flís;
    • Bætt við stuðningi fyrir ARM SoC og Intel Agilex (SoCFPGA), NXP i.MX8MM, Allwinner (RerVision H3-DVK (H3), Oceanic 5205 5inMFD, ,Beelink GS2 (H6), Orange Pi 3 (H6)), Rockchip (Orange Pi) ) borð 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).

Á sama tíma, Latin American Free Software Foundation myndast
вариант alveg ókeypis kjarna 5.2 - Linux-frítt 5.2-gnu, hreinsaður af vélbúnaðar- og ökumannseiningum sem innihalda ófrjálsa íhluti eða kóðahluta, en umfang þeirra er takmarkað af framleiðanda. Ný útgáfa felur í sér upphleðslu skráa
Hljóð Opna fastbúnað. Óvirkt er að hlaða kubbum í rekla
mt7615, rtw88, rtw8822b, rtw8822c, btmtksdio, iqs5xx, ishtp og ucsi_ccg. Kóðinn fyrir blob-hreinsun í ixp4xx, imx-sdma, amdgpu, nouveau og goya rekla og undirkerfum, sem og í örkóðaskjölunum, hefur verið uppfærður. Hætti að þrífa klossa í r8822be drivernum vegna þess að hann var fjarlægður.

Heimild: opennet.ru

Bæta við athugasemd