Lëshimi i kernelit Linux 5.18

Pas dy muajsh zhvillimi, Linus Torvalds prezantoi lëshimin e kernelit Linux 5.18. Ndër ndryshimet më të dukshme: është bërë një pastrim i madh i funksionaliteteve të vjetra, sistemi i skedarëve Reiserfs është shpallur obsolent, janë realizuar ngjarje për gjurmimin e proceseve të përdoruesit, është shtuar mbështetje për mekanizmin e bllokimit të eksploitëve Intel IBT, është aktivizuar një mod për identifikimin e mbushjeve të tamponëve kur përdoret funksioni memcpy(), është shtuar një mekanizëm për gjurmimin e thirrjeve të funksioneve fprobe, është përmirësuar performanca e planifikuesit të detyrave në CPU-të AMD Zen, është përfshirë një drejtues për menaxhimin e funksionalitetit të CPU-ve Intel (SDS), është integruar një pjesë e patch-eve për restrukturimin e skedarëve të titujve, dhe është miratuar përdorimi i standardit C11.

Në versionin e ri janë pranuar 16206 korrigjime nga 2127 zhvillues (në lëshimin e kaluar kishte 14203 korrigjime nga 1995 zhvillues), madhësia e patch-it është 108 MB (ndryshimet preken 14235 skedarë, janë shtuar 1340982 rreshta kodi, janë fshirë 593836 rreshta). Rreth 44% e të gjitha ndryshimeve të paraqitura në 5.18 lidhen me drejtuesit e pajisjeve, rreth 16% e ndryshimeve kanë të bëjnë me përditësimin e kodit të veçantë për arkitekturat hardware, 11% është lidhur me pilein e rrjetit, 3% me sistemet e skedarëve dhe 3% me nën-sistemat e brendshme të kernelit.

Novitet kryesore në kernelin 5.18:

  • Sistemi i diskut, hyrja/ dalje dhe sistemet e skedarĂ«ve
    • NĂ« sistemin e skedarĂ«ve Btrfs Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r kalimin e tĂ« dhĂ«nave tĂ« kompresuara gjatĂ« operacioneve send dhe receive. MĂ« parĂ«, kur pĂ«rdorej send/receive, ana e dĂ«rguesit zhbllokonte tĂ« dhĂ«nat qĂ« ruheshin nĂ« formĂ« tĂ« kompresuar, ndĂ«rsa ana e pranuese ripĂ«rshtonte ato para se t'i shkruante. NĂ« kernelin 5.18, aplikacioneve nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit qĂ« pĂ«rdorin thirrjet send/receive u ofrohet mundĂ«sia pĂ«r tĂ« transferuar tĂ« dhĂ«na tĂ« kompresuara pa rikompresim. Funksionaliteti Ă«shtĂ« realizuar pĂ«rmes operacioneve tĂ« reja ioctl BTRFS_IOC_ENCODED_READ dhe BTRFS_IOC_ENCODED_WRITE, qĂ« lejojnĂ« tĂ« lexohen dhe shkruhen informacione drejtpĂ«rdrejt nĂ« ekstente.

      PĂ«r mĂ« tepĂ«r, nĂ« Btrfs Ă«shtĂ« rritur performanca e fsync. ËshtĂ« shtuar mundĂ«sia e dedupikimit dhe ekzekutimit tĂ« reflink (klonim tĂ« metadatave tĂ« njĂ« skedari me krijimin e njĂ« lidhjeje me tĂ« dhĂ«na qĂ« ekzistojnĂ« pa i kopjuar ato) pĂ«r tĂ« gjithĂ« depozitat, pa u kufizuar nĂ« pikat e montimit.

    • NĂ« modin e hyrjes direkte (Direct I/O) Ă«shtĂ« mundĂ«suar qasja nĂ« skedarĂ«t e enkriptuar kur pĂ«rdoren nĂ« fscrypt enkriptimi inline, nĂ« tĂ« cilin operacionet e enkriptimit dhe dekriptimit realizohen nga kontrollori i skedarĂ«ve, jo nga kernel. NĂ« enkriptimin e zakonshĂ«m nga forca e kernelit, qasja nĂ« skedarĂ«t e enkriptuar pĂ«rmes Direct I/O si mĂ« parĂ« nuk Ă«shtĂ« e mundur, pasi ndodhet adresimi i skedarĂ«ve duke kaluar mekanizmin e buferizimit nĂ« kernel.
    • NĂ« serverin NFS, mbĂ«shtetja pĂ«r protokollin NFSv3 Ă«shtĂ« aktivizuar si parazgjedhje, tĂ« cilin tani nuk e kĂ«rkon aktivizimin e veçantĂ« dhe Ă«shtĂ« nĂ« dispozicion me aktivizimin e pĂ«rgjithshĂ«m NFS. NFSv3 konsiderohet si versioni kryesor dhe gjithmonĂ« i mbĂ«shtetur i NFS, ndĂ«rsa mbĂ«shtetja pĂ«r NFSv2 ndoshta do tĂ« ndĂ«rpritet nĂ« tĂ« ardhmen. Efikasiteti i leximit tĂ« pĂ«rmbajtjes sĂ« katalogĂ«ve Ă«shtĂ« rritur ndjeshĂ«m.
    • Sistemi i skedarĂ«ve ReiserFS Ă«shtĂ« shpallur obsolent dhe pritet tĂ« largohet nĂ« vitin 2025. Shpallja e ReiserFS si obsolent do tĂ« ndihmojĂ« nĂ« zvogĂ«limin e kostove tĂ« mbajtjes sĂ« ndryshimeve tĂ« zakonshme pĂ«r sistemet e skedarĂ«ve qĂ« lidhen me mbĂ«shtetje tĂ« re API pĂ«r montimin, iomap dhe foliantĂ«.
    • PĂ«r sistemin F2FS Ă«shtĂ« realizuar mundĂ«sia e mapimit tĂ« identifikuesve tĂ« pĂ«rdoruesve tĂ« sistemĂ«ve tĂ« skedarĂ«ve tĂ« montuar, e cila pĂ«rdoret pĂ«r tĂ« lidhur skedarĂ«t e njĂ« pĂ«rdoruesi tĂ« caktuar nĂ« njĂ« ndarje tĂ« huaj tĂ« montuar me njĂ« pĂ«rdorues tjetĂ«r nĂ« sistemin aktual.
    • Kodi pĂ«r statistikat e llogaritjes nĂ« procesorĂ«t e Device-mapper Ă«shtĂ« rishikuar, çka ka lejuar tĂ« rritet ndjeshĂ«m saktĂ«sia e akountimit nĂ« procesorĂ« tĂ« tillĂ« si dm-crypt.
    • PĂ«r pajisjet NVMe Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r kontrollet 64-bit pĂ«r verifikimin e integritetit.
    • PĂ«r sistemin e skedarĂ«ve exfat Ă«shtĂ« propozuar njĂ« mundĂ«si e re montimi "keep_last_dots", qĂ« ndalon pastrimin e pikĂ«ve nĂ« fund tĂ« emrit tĂ« skedarit (nĂ« Windows, pikĂ«t nĂ« fund tĂ« emrit fshihen automatikisht).
    • NĂ« EXT4 Ă«shtĂ« rritur performanca nĂ« modin fast_commit dhe Ă«shtĂ« rritur shkallĂ«zueshmĂ«ria. MundĂ«sia e montimit "mb_optimize_scan", qĂ« lejon rritjen e performancĂ«s nĂ« kushtet e fragmentimit tĂ« madh tĂ« FS, Ă«shtĂ« pĂ«rshtatur pĂ«r punĂ« me skedarĂ«t me ekstente.
    • ËshtĂ« ndĂ«rprerĂ« mbĂ«shtetja pĂ«r rrjedhat e shkrimit (write stream) nĂ« nĂ«n-sistemin qĂ« siguron funksionimin e pajisjeve bllokuese. Kjo mundĂ«si ishte propozuar pĂ«r SSD, por nuk gjeti popullaritet dhe tani nuk ka pajisje nĂ« pĂ«rdorim qĂ« e mbĂ«shtesin kĂ«tĂ« mod dhe Ă«shtĂ« e pakta qĂ« ato do tĂ« shfaqen nĂ« tĂ« ardhmen.
  • Kujtesa dhe shĂ«rbimet sistemore
    • Ka filluar integrimi i njĂ« grupi patch-esh qĂ« lejon tĂ« reduktohet ndjeshĂ«m koha e rikompilimit tĂ« bĂ«rthamĂ«s duke restrukturizuar hierarkinĂ« e skedave tĂ« titujve dhe duke zvogĂ«luar numrin e varĂ«sive tĂ« ndĂ«rsjella. NĂ« bĂ«rthamĂ«n 5.18 janĂ« pĂ«rfshirĂ« patch-e qĂ« optimizojnĂ« strukturĂ«n e skedave tĂ« titujve tĂ« planifikuesit tĂ« detyrave (kernel/sched). Krahasuar me botimin e kaluar, konsumi i kohĂ«s sĂ« procesorit gjatĂ« kompilimit tĂ« kodit kernel/sched Ă«shtĂ« reduktuar me 61%, ndĂ«rsa koha reale Ă«shtĂ« zvogĂ«luar me 3.9% (nga 2.95 nĂ« 2.84 sek).
    • NĂ« kodin e bĂ«rthamĂ«s lejohet pĂ«rdorimi i standardit C11, i publikuar nĂ« vitin 2011. Kodet qĂ« shtoheshin mĂ« parĂ« nĂ« bĂ«rthamĂ« duhej tĂ« pĂ«rputheshin me specifikimin ANSI C (C89), i formuar qĂ« nĂ« vitin 1989. NĂ« skenaret ndĂ«rtuese tĂ« bĂ«rthamĂ«s 5.18, opsioni ‘—std=gnu89’ Ă«shtĂ« zĂ«vendĂ«suar me ‘—std=gnu11 -Wno-shift-negative-value’. U shqyrtua mundĂ«sia e pĂ«rdorimit tĂ« standardit C17, por nĂ« kĂ«tĂ« rast do tĂ« duhej tĂ« rritej versioni minimal i mbĂ«shtetur tĂ« GCC, ndĂ«rsa pĂ«rfshirja e mbĂ«shtetjes pĂ«r C11 pĂ«rputhet me kĂ«rkesat aktuale pĂ«r versionin e GCC (5.1).
    • PĂ«rmirĂ«simi i performancĂ«s nĂ« planifikimin e detyrave nĂ« procesorĂ«t AMD me mikroarkitekturĂ«n Zen, nĂ« tĂ« cilĂ«t pĂ«r çdo nyje me kanale lokale memorjeje ofrohen disa cache tĂ« nivelit tĂ« fundit (LLC, Last Level Cache). NĂ« versionin e ri Ă«shtĂ« eliminuar disbalanci LLC midis nyjave NUMA, çka nĂ« disa lloje ngarkesash ka çuar nĂ« pĂ«rmirĂ«simin e konsiderueshĂ«m tĂ« performancĂ«s.
    • JanĂ« zgjeruar mjetet pĂ«r gjurmimin e aplikacioneve nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit. NĂ« versionin e ri tĂ« bĂ«rthamĂ«s Ă«shtĂ« shtuar mundĂ«sia e krijimit tĂ« ngjarjeve tĂ« gjurmimit nga proceset e pĂ«rdoruesit dhe regjistrimit tĂ« tĂ« dhĂ«nave nĂ« njĂ« buffer gjurmimi, tĂ« cilat mund tĂ« shikohen pĂ«rmes utilitarĂ«ve tipikĂ« tĂ« gjurmimit tĂ« bĂ«rthamĂ«s, si ftrace dhe perf. Ngjarjet e gjurmimit nga hapĂ«sira e pĂ«rdoruesit janĂ« tĂ« izoluara nga ngjarjet e gjurmimit tĂ« bĂ«rthamĂ«s. Gjendja e ngjarjeve mund tĂ« shikohet pĂ«rmes skedarit /sys/kernel/debug/tracing/user_events_status, ndĂ«rsa regjistrimi i ngjarjes dhe regjistrimi i tĂ« dhĂ«nave pĂ«rmes skedarit /sys/kernel/debug/tracing/user_events_data.
    • Shtuar mekanizmi i gjurmimit (probe) tĂ« thirrjeve tĂ« funksioneve - fprobe. API i fprobe Ă«shtĂ« i bazuar nĂ« ftrace, por e kufizuar vetĂ«m nĂ« mundĂ«sinĂ« e lidhjes sĂ« menaxherĂ«ve tĂ« callback me pikĂ«n e hyrjes nĂ« funksion dhe pĂ«rfundimin e funksionit. Ndryshe nga kprobes dhe kretprobes, mekanizmi i ri lejon pĂ«rdorimin e njĂ« menaxheri pĂ«r disa funksione.
    • Ka pĂ«rfunduar mbĂ«shtetja pĂ«r procesorĂ«t e vjetĂ«r ARM (ARMv4 dhe ARMv5) qĂ« nuk janĂ« tĂ« pajisur me njĂ« njĂ«si kontrolli tĂ« memorjes (MMU). MbĂ«shtetja pĂ«r sistemet ARMv7-M pa MMU Ă«shtĂ« ruajtur.
    • Ka pĂ«rfunduar mbĂ«shtetja pĂ«r arkitekturĂ«n NDS32 tĂ« ngjashme me RISC, e cila ishte pĂ«rdorur nĂ« procesorĂ«t e kompanisĂ« Andes Technologies. Kodi Ă«shtĂ« hequr pĂ«r shkak tĂ« mungesĂ«s sĂ« mbĂ«shtetjes dhe kĂ«rkesĂ«s pĂ«r mbĂ«shtetje NDS32 nĂ« bĂ«rthamĂ«n kryesore tĂ« Linux (pĂ«rdoruesit e mbetur pĂ«rdorin ndĂ«rtesa tĂ« specializuara tĂ« bĂ«rthamĂ«s nga prodhuesit e pajisjeve).
    • Sipas parazgjedhjes Ă«shtĂ« ndaluar ndĂ«rtimi i bĂ«rthamĂ«s me mbĂ«shtetje pĂ«r formatin e skedarĂ«ve a.out pĂ«r arkitekturat alfa dhe m68k, nĂ« tĂ« cilat ky format vazhdon tĂ« pĂ«rdoret. ËshtĂ« e mundur qĂ« mbĂ«shtetja pĂ«r formatin e vjetĂ«ruar a.out tĂ« hiqet plotĂ«sisht nga bĂ«rthama. Planet pĂ«r heqjen e formatit a.out janĂ« diskutuar qĂ« nga viti 2019.
    • PĂ«r arkitekturĂ«n PA-RISC Ă«shtĂ« realizuar mbĂ«shtetje minimale pĂ«r mekanizmin vDSO (virtual dynamic shared objects), i cili ofron njĂ« grup tĂ« kufizuar thirrjesh sistemore, tĂ« aksesueshme nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit pa kaluar konteksteve. MbĂ«shtetja e vDSO ka mundĂ«suar mundĂ«sinĂ« e fillimit me njĂ« stack tĂ« papĂ«rshtatshĂ«m.
    • Shtuar mbĂ«shtetje pĂ«r mekanizmin Intel HFI (Hardware Feedback Interface), i cili lejon pajisjen tĂ« transmetojĂ« bĂ«rthamĂ«s informacione mbi performancĂ«n aktuale dhe efikasitetin energjetik tĂ« çdo CPU.
    • Shtuar njĂ« drejtues pĂ«r mekanizmin Intel SDSi (Software-Defined Silicon), i cili mundĂ«son menaxhimin e aktivizimit tĂ« veçorive shtesĂ« nĂ« procesor (pĂ«r shembull, instruksione tĂ« specializuara dhe memorie tĂ« shtuar cache). Ideja Ă«shtĂ« qĂ« çipe nĂ« njĂ« çmim mĂ« tĂ« ulĂ«t mund tĂ« dorĂ«zohen me funksione tĂ« zgjeruara tĂ« bllokuara, tĂ« cilat mund tĂ« „blihen“ dhe aktivizohen mĂ« pas pa ndĂ«rruar harduerin e çipit.
    • Shtuar drejtuesi amd_hsmp pĂ«r mbĂ«shtetje tĂ« ndĂ«rfaqes AMD HSMP (Host System Management Port), i cili ofron akses nĂ« funksione tĂ« menaxhimit tĂ« procesorit pĂ«rmes njĂ« grupi tĂ« regjistrave tĂ« veçantĂ«, tĂ« cilĂ«t u shfaqĂ«n nĂ« procesorĂ«t server AMD EPYC qĂ« nga gjenerata Fam19h. PĂ«r shembull, pĂ«rmes HSMP mund tĂ« merren tĂ« dhĂ«na mbi konsumimin e energjisĂ« dhe temperaturĂ«n, tĂ« vendosen kufij mbi frekuencĂ«n, tĂ« aktivizohen modet e ndryshme tĂ« rritjes sĂ« performancĂ«s dhe tĂ« menaxhohen parametrat e funksionimit tĂ« memorie.
    • NĂ« ndĂ«rfaqen e I/O asinkronik io_uring Ă«shtĂ« implementuar opsioni IORING_SETUP_SUBMIT_ALL pĂ«r regjistrimin nĂ« buferin ring tĂ« njĂ« grupi pĂ«rshkruesish skedash, si dhe operacioni IORING_OP_MSG_RING, i cili lejon dĂ«rgimin e njĂ« sinjali nga njĂ« bufer ring nĂ« njĂ« tjetĂ«r bufer ring.
    • NĂ« mekanizmin DAMOS (Skemat e Operacioneve tĂ« Monitorimit tĂ« Qasjes nĂ« tĂ« DhĂ«na), qĂ« lejon lirimin e memories duke marrĂ« parasysh frekuencĂ«n e qasjes nĂ« memorie, janĂ« zgjeruar mundĂ«sitĂ« pĂ«r kontrollin e operacioneve me memori nga hapĂ«sira e pĂ«rdoruesit.
    • JanĂ« integruar patch-e tĂ« reja qĂ« realizojnĂ« konceptin e folio-ve tĂ« faqeve tĂ« memories, tĂ« cilat i ngjajnĂ« faqeve tĂ« pĂ«rbashkĂ«ta, por ndryshojnĂ« me semantikĂ« tĂ« pĂ«rmirĂ«suar dhe organizim mĂ« tĂ« qartĂ« tĂ« punĂ«s. PĂ«rdorimi i folio-ve lejon shpejtimin e menaxhimit tĂ« memories nĂ« disa nĂ«n sisteme tĂ« bĂ«rthamĂ«s. NĂ« kĂ«to patch-e Ă«shtĂ« realizuar kalimi nĂ« folio pĂ«r funksionet e brendshme tĂ« menaxhimit tĂ« memories, duke pĂ«rfshirĂ« variacione tĂ« funksionit get_user_pages(). ËshtĂ« ofruar mbĂ«shtetje pĂ«r krijimin e folio-ve tĂ« mĂ«dha nĂ« kodin e parashikimit tĂ« leximit tĂ« tĂ« dhĂ«nave.
    • NĂ« sistemin e ndĂ«rtimit Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r variablat e mjedisit USERCFLAGS dhe USERLDFLAGS, me anĂ« tĂ« tĂ« cilave mund tĂ« kalohen flamuj shtesĂ« nĂ« kompilator dhe linker.
    • NĂ« nĂ«n sistemin e eBPF nĂ« mekanizmin BTF (BPF Type Format), i cili ofron informacion pĂ«r verifikimin e tipave nĂ« pseudokodin BPF, Ă«shtĂ« realizuar mundĂ«sia e shtimit tĂ« anotacioneve pĂ«r variablat qĂ« referohen nĂ« hapĂ«sirĂ«n e memories nĂ« nivelin e pĂ«rdoruesit. Anotacionet ndihmojnĂ« sistemin e verifikimit tĂ« kodit BPF nĂ« identifikimin dhe verifikimin e qasjeve nĂ« memorie mĂ« cilĂ«sisht.
    • ËshtĂ« propozuar njĂ« menaxher i ri i alokimit tĂ« memories pĂ«r ruajtjen e programeve tĂ« ngarkuara BPF, i cili lejon pĂ«rdorimin mĂ« efektiv tĂ« memories nĂ« situatat e ngarkimit tĂ« numrit tĂ« madh tĂ« programeve BPF.
    • NĂ« thirrjen sistematike madvise(), e cila ofron mjete pĂ«r optimizimin e menaxhimit tĂ« memories sĂ« procesit, Ă«shtĂ« shtuar flamuri MADV_DONTNEED_LOCKED, i cili plotĂ«son flamurin ekzistues MADV_DONTNEED, pĂ«rmes tĂ« cilit bĂ«rthama mund tĂ« informohet paraprakisht pĂ«r lirimin e njĂ« blloku memorie, dmth se ky bllok tashmĂ« nuk Ă«shtĂ« i nevojshĂ«m dhe mund tĂ« pĂ«rdoret nga bĂ«rthama. Ndryshe nga MADV_DONTNEED, pĂ«rdorimi i flamurit MADV_DONTNEED_LOCKED Ă«shtĂ« i lejuar pĂ«r faqet e memories tĂ« kapura nĂ« RAM, tĂ« cilat gjatĂ« thirrjes sĂ« madvise largohen pa ndryshuar statusin e tyre tĂ« kapjes dhe nĂ« rastin e qasjes sĂ« mĂ«vonshme nĂ« bllok dhe gjenerimin e 'page fault' kthehen me ruajtjen e lidhjes. Shtuar gjithashtu Ă«shtĂ« bĂ«rĂ« njĂ« ndryshim qĂ« lejon pĂ«rdorimin e flamurit MADV_DONTNEED me faqe tĂ« mĂ«dha memoriesh nĂ« HugeTLB.
  • Virtualizimi dhe siguria
    • PĂ«r arkitekturĂ«n x86 Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r mekanizmin e mbrojtjes sĂ« rrethit tĂ« ekzekutimit tĂ« komandave Intel IBT (Ndjekja Indirekte e DegĂ«ve), e cila pengon pĂ«rdorimin e teknikave pĂ«r ndĂ«rtimin e eksploitĂ«ve duke pĂ«rdorur metoda tĂ« kthyera pĂ«r programim (ROP), nĂ« tĂ« cilat eksploitĂ«t formohen nĂ« formĂ«n e njĂ« zinxhiri thirrjesh tĂ« majme tĂ« instruktimeve qĂ« ekzistojnĂ« nĂ« memorie, qĂ« pĂ«rfundojnĂ« me njĂ« instruktion kthimi tĂ« kontrollit (zakonisht fundet e funksioneve). QĂ«llimi i metodĂ«s sĂ« mbrojtjes sĂ« realizuar Ă«shtĂ« bllokimi i kalimeve indirekte nĂ« trupin e funksiones duke shtuar nĂ« fillim tĂ« funksionit njĂ« instruksion tĂ« veçantĂ« ENDBR dhe lejen e ekzekutimit pĂ«r kalim indirekt vetĂ«m nĂ« rastin e kalimeve nĂ« kĂ«tĂ« instruksion (thirrja indirekte pĂ«rmes JMP dhe CALL duhet gjithmonĂ« tĂ« bjerĂ« nĂ« instruksionin ENDBR, i cili vendoset nĂ« fillim tĂ« funksionit).
    • ËshtĂ« pĂ«rfshirĂ« njĂ« verifikim mĂ« i fortĂ« i kufijve tĂ« buferĂ«ve nĂ« funksionet memcpy(), memmove() dhe memset(), qĂ« realizohet nĂ« fazĂ«n e kompilimit kur aktivizohet moda CONFIG_FORTIFY_SOURCE. Ndryshimi i shtuar redukton nĂ« kontrollin e daljes jashtĂ« kufijve tĂ« elementeve tĂ« strukturave, tĂ« cilat kanĂ« njĂ« madhĂ«si qĂ« dihet. KĂ«tu theksohet se mundĂ«sia e realizuar do tĂ« bllokonte tĂ« gjitha mbushjet e buferĂ«ve tĂ« lidhura me memcpy() nĂ« bĂ«rthamĂ«, tĂ« identifikuara sĂ« paku gjatĂ« tre viteve tĂ« fundit.
    • ËshtĂ« shtuar pjesa e dytĂ« e kodit tĂ« realizimit tĂ« azhurnuar tĂ« gjeneratorit tĂ« numrave tĂ« rastĂ«sishĂ«m RDRAND, i cili pĂ«rgjigjet pĂ«r funksionimin e pajisjeve /dev/random dhe /dev/urandom. Realizimi i ri Ă«shtĂ« i shquar pĂ«r unifikimin e funksionimit tĂ« /dev/random dhe /dev/urandom, shtimin e mbrojtjes nga shfaqja e kopjeve nĂ« rrjedhĂ«n e numrave tĂ« rastĂ«sishĂ«m gjatĂ« ekzekutimit dhe kalimi nĂ« pĂ«rdorimin e funksionit hash BLAKE2s nĂ« vend tĂ« SHA1 pĂ«r operacionet e pĂ«rzierjes sĂ« entropisĂ«. Ky ndryshim ka lejuar rritjen e sigurisĂ« sĂ« gjeneratorit tĂ« numrave tĂ« rastĂ«sishĂ«m, duke e eliminuar algoritmin problematik SHA1 dhe duke pĂ«rjashtuar ribashkimin e vektorit tĂ« inicializimit RNG. Duke qenĂ« se algoritmi BLAKE2s i kalon SHA1 nĂ« performancĂ«, pĂ«rdorimi i tij gjithashtu ka pasur njĂ« ndikim pozitiv nĂ« performancĂ«n. makinave virtuale dhe kalimi nĂ« pĂ«rdorimin e funksionit hash BLAKE2s nĂ« vend tĂ« SHA1 pĂ«r operacionet e pĂ«rzierjes sĂ« entropisĂ«. Ky ndryshim lehtĂ«soi rritjen e sigurisĂ« sĂ« gjeneratorit tĂ« numrave pseudologjikĂ«, duke hequr algoritmin problematik SHA1 dhe duke eliminuar rikthimin e vektorit tĂ« inicializimit RNG. Duke qenĂ« se algoritmi BLAKE2s e tejkalon SHA1 nĂ« performancĂ«, aplikimi i tij pati gjithashtu njĂ« efekt pozitiv nĂ« performancĂ«n.
    • PĂ«r arkitekturĂ«n ARM64, Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r algoritmin e ri tĂ« autentifikimit tĂ« treguesve — "QARMA3", i cili Ă«shtĂ« mĂ« i shpejtĂ« se algoritmi QARMA ndĂ«rsa ruan njĂ« nivel tĂ« duhur mbrojtjeje. Teknologjia lejon pĂ«rdorimin e instrukcioneve tĂ« specializuara ARM64 pĂ«r verifikimin e adresave tĂ« kthimit me anĂ« tĂ« nĂ«nshkrimeve digjitale, tĂ« cilat ruhen nĂ« bitĂ«t e sipĂ«rm tĂ« pa pĂ«rdorur tĂ« treguesit vetĂ«.
    • PĂ«r arkitekturĂ«n ARM64 Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r ndĂ«rtimin me pĂ«rfshirjen nĂ« GCC 12 tĂ« modit tĂ« mbrojtjes nga ri-shkruan adresĂ«n e kthimit nga funksioni nĂ« rast tĂ« mbushjes sĂ« tamponit nĂ« stek. QĂ«llimi i mbrojtjes Ă«shtĂ« ruajtja, pas kalimit tĂ« kontrollit nĂ« funksion, e adresĂ«s sĂ« kthimit nĂ« njĂ« stek tĂ« veçantĂ« "hije" dhe nxjerrja e kĂ«saj adrese para daljes nga funksioni.
    • ËshtĂ« shtuar njĂ« ruajtje e re çelĂ«sash (keyring) — "machine", qĂ« pĂ«rmban çelĂ«sat e pronarit tĂ« sistemit (MOK, Machine Owner Keys), tĂ« mbĂ«shtetur nĂ« ngarkuesin shim. ÇelĂ«sat e cituar mund tĂ« pĂ«rdoren pĂ«r tĂ« nĂ«nshkruar digjitalisht komponentĂ«t e bĂ«rthamĂ«s, tĂ« ngarkuar nĂ« fazĂ«n pas ngarkimit fillestar (p.sh., module tĂ« bĂ«rthamĂ«s).
    • ËshtĂ« hequr mbĂ«shtetje pĂ«r çelĂ«sat e mbyllur asimetrik pĂ«r TPM, tĂ« cilat janĂ« propozuar nĂ« versionin e vjetĂ«ruar tĂ« TPM, kanĂ« probleme tĂ« njohura me sigurinĂ« dhe nuk kanĂ« marrĂ« pĂ«rhapje nĂ« praktikĂ«.
    • ËshtĂ« shtuar mbrojtja e tĂ« dhĂ«nave me tipin size_t nga mbushjet numerike. NĂ« kod janĂ« angazhuar trajtuesit size_mul(), size_add() dhe size_sub(), tĂ« cilĂ«t lejojnĂ« tĂ« prodhojnĂ« nĂ« mĂ«nyrĂ« tĂ« sigurt shumĂ«zimin, shumimin dhe zbritjen e madhĂ«sive me tipin size_t.
    • NĂ« ndĂ«rtimin e bĂ«rthamĂ«s janĂ« pĂ«rfshirĂ« flamujt "-Warray-bounds" dhe "-Wzero-length-bounds", qĂ« japin paralajmĂ«rime kur indekset dalin jashtĂ« kufijve tĂ« masĂ«s dhe pĂ«r pĂ«rdorimin e masave me gjatĂ«si zero.
    • NĂ« pajisjen virtio-crypto Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r enkriptimin duke pĂ«rdorur algoritmin RSA.
  • Sistemi i rrjetit
    • NĂ« implementimin e urave tĂ« rrjetit Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r mĂ«nyrĂ«n e kyçjes sĂ« porteve (locked mode), nĂ« tĂ« cilĂ«n pĂ«rdoruesi mund tĂ« dĂ«rgojĂ« trafik pĂ«rmes portit vetĂ«m me adresĂ«n MAC tĂ« lejuar. ËshtĂ« shtuar gjithashtu mundĂ«sia pĂ«r tĂ« pĂ«rdorur struktura tĂ« shumta pĂ«r tĂ« vlerĂ«suar gjendjen e protokollit STP (Spanning Tree Protocol). MĂ« parĂ«, pĂ«r VLAN mund tĂ« bĂ«hej vetĂ«m lidhje e drejtpĂ«rdrejtĂ« me STP (1:1), ku çdo VLAN menaxhohej nĂ« mĂ«nyrĂ« tĂ« pavarur. NĂ« versionin e ri Ă«shtĂ« shtuar parametri mst_enable, me pĂ«rfshirjen e tĂ« cilit gjendja e VLAN-ve kontrollohet nga moduli MST (Multiple Spanning Trees) dhe lidhja e VLAN-ve mund tĂ« pĂ«rputhet me modelin M:N.
    • Puna pĂ«r integrimin e mjeteve nĂ« skedarin rrjetĂ«s pĂ«r monitorimin e shkaqeve tĂ« humbjes sĂ« paketave (kodet e arsyes) ka vazhduar. Kodi i arsyes transmetohet gjatĂ« lirimit tĂ« memories qĂ« lidhet me paketĂ«n dhe lejon qĂ« tĂ« merren parasysh situata tĂ« tilla si humbja e paketĂ«s pĂ«r shkak tĂ« gabimeve nĂ« plotĂ«simin e fushave tĂ« titullit, identifikimi i spoofing nga filtri rp_filter, kontrolli i gabuar i somĂ«, mungesa e memories, aktivizimi i rregullave IPSec XFRM, numri i gabuar i sekuencĂ«s TCP, etj.
    • ËshtĂ« ofruar mundĂ«sia e transmetimit tĂ« paketave rrjetĂ«s nga programet BPF, tĂ« drejtuara nga hapĂ«sira e pĂ«rdoruesit nĂ« modin BPF_PROG_RUN, nĂ« tĂ« cilin programet BPF ekzekutohen nĂ« bĂ«rthamĂ«, por kthejnĂ« rezultatin nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit. Paketat transmetohen duke pĂ«rdorur nĂ«n-sistemimin XDP (eXpress Data Path). MbĂ«shtetet moda jetĂ«sore e pĂ«rpunimit tĂ« paketave, nĂ« tĂ« cilĂ«n trajtuesi XDP mund tĂ« drejtojĂ« nĂ« kohĂ« reale paketat rrjetĂ«s nĂ« stek ose nĂ« pajisje tĂ« tjera. Gjithashtu Ă«shtĂ« e mundur tĂ« krijoni gjenerues programorĂ« tĂ« trafikut tĂ« jashtĂ«m ose tĂ« futni korniza rrjetĂ«s nĂ« stek.
    • PĂ«r programet BPF, tĂ« lidhura me cgroups rrjetĂ«s, janĂ« propozuar funksione ndihmĂ«se pĂ«r vendosjen eksplicite tĂ« vlerĂ«s, qĂ« kthehet nga thirrjet sistemore, duke lejuar qĂ« tĂ« kalojnĂ« informacione mĂ« tĂ« plota mbi arsyet e bllokimit tĂ« thirrjes sistemore.
    • NĂ« nĂ«n-sistemin XDP (eXpress Data Path) Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r paketat e fragmentuara, tĂ« vendosura nĂ« disa bufe, qĂ« lejon pĂ«rpunimin nĂ« XDP tĂ« Jumbo-kornizave dhe aplikimin e TSO/GRO (TCP Segmentation Offload/Generic Receive Offload) pĂ«r XDP_REDIRECT.
    • Procesi i fshirjes sĂ« hapĂ«sirave rrjetĂ«s Ă«shtĂ« ndjeshĂ«m pĂ«rshpejtuar, gjĂ« qĂ« ishte kĂ«rkuar nĂ« disa sisteme tĂ« mĂ«dha me volum tĂ« madh tĂ« trafikut.
  • Pajisjet
    • NĂ« drejtuesin amdgpu, teknologjia e sinkronizimit adaptiv FreeSync Ă«shtĂ« aktivizuar si parazgjedhje, e cila lejon rregullimin e frekuencĂ«s sĂ« pĂ«rditĂ«simit tĂ« informacionit nĂ« ekran, duke siguruar qĂ«ndrueshmĂ«ri dhe mungesĂ« tĂ« ndarjeve tĂ« imazhit gjatĂ« lojĂ«rave dhe shikimit tĂ« videove. ËshtĂ« shpallur mbĂ«shtetje e qĂ«ndrueshme pĂ«r GPU-nĂ« Aldebaran.
    • NĂ« drejtuesin i915 Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r çipat Intel Alderlake N dhe kartat grafike discrete Intel DG2-G12 (Arc Alchemist).
    • NĂ« drejtuesin nouveau Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r bitrate mĂ« tĂ« larta pĂ«r interfesat DP/eDP dhe mbĂ«shtetje pĂ«r zgjatĂ«sit e kabllit lttprs (Link-Training Tunable PHY Repeaters).
    • NĂ« nĂ«n-sistemin drm (Direct Rendering Manager) nĂ« drejtuesit armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen dhe vc4 Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r parametrin nomodeset, qĂ« lejon çaktivizimin e kalimeve tĂ« modet video nĂ« nivelin e bĂ«rthamĂ«s dhe pĂ«rdorimin e mjeteve pĂ«r akcelerimin harduerik tĂ« tĂ« vizatuarit, duke lĂ«nĂ« vetĂ«m funksionalitetin e lidhur me frame buffer-in e sistemit.
    • Shtimi i mbĂ«shtetjes pĂ«r ARM SoC Qualcomm Snapdragon 625/632 (pĂ«rdoret nĂ« smartphone-t LG Nexus 5X dhe Fairphone FP3), Samsung Exynos 850, Samsung Exynos 7885 (pĂ«rdoret nĂ« Samsung Galaxy A8), Airoha (Mediatek/EcoNet) EN7523, Mediatek mt6582 (tableti Prestigio PMT5008 3G), Microchip Lan966, Renesas RZ/G2LC, RZ/V2L, Tesla FSD, TI K3/AM62 dhe i.MXRTxxxx.
    • Shtimi i mbĂ«shtetjes pĂ«r pajisjet dhe platformat ARM tĂ« Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S, tableti Prestigio PMT5008 3G), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 dhe OSMC Vero 4K+), Aspeed (Quanta S6Q, ASRock ROMED8HM3), Marvell MVEBU/Armada (Ctera C200 V1 dhe V2 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903).
    • Shtimi i mbĂ«shtetjes pĂ«r sistemet audio dhe kodekĂ«t AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ/V2L, Texas Instruments TAS585M. Shtimi i njĂ« implementimi fillestar tĂ« drejtuesit tĂ« audios pĂ«r çipin DSP Intel AVS. PĂ«rmirĂ«simi i mbĂ«shtetjes pĂ«r drejtuesit pĂ«r Intel ADL dhe Tegra234, si dhe ndryshime pĂ«r tĂ« rritur mbĂ«shtetjen audio nĂ« pajisjet Dell, HP, Lenovo, ASUS, Samsung dhe Clevo.

    NĂ« tĂ« njĂ«jtĂ«n kohĂ«, Fondi Latinoamerikan i Softuerit tĂ« LirĂ« ka formuar variantin e bĂ«rthamĂ«s plotĂ«sisht tĂ« lirĂ« 5.18 — Linux-libre 5.18-gnu, i pastruar nga elemente firmware dhe drejtuesish qĂ« pĂ«rmbajnĂ« komponente ose copa kodi tĂ« papara, zona e pĂ«rdorimit tĂ« tĂ« cilave Ă«shtĂ« e kufizuar nga prodhuesi. NĂ« lĂ«shimin e ri Ă«shtĂ« bĂ«rĂ« pastrimi i drejtuesve pĂ«r panele MIPI DBI, VPU Amphion, WiFi MediaTek MT7986 WMAC, Mediatek MT7921U (USB) dhe Realtek 8852a/8852c, çipet audio Intel AVS dhe Texas Instruments TAS5805M. Po ashtu Ă«shtĂ« bĂ«rĂ« pastrimi i skedave DTS pĂ«r SoC tĂ« ndryshĂ«m Qualcomm me procesorĂ« tĂ« bazuar nĂ« arkitekturĂ«n AArch64. Kodi i pastrimit tĂ« blob-ve nĂ« drejtues dhe nĂ«n-sistemet AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP, MediaTek HCI UART Ă«shtĂ« pĂ«rditĂ«suar.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster