{"id":102190,"date":"2021-11-02T21:36:39","date_gmt":"2021-11-02T19:36:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-15"},"modified":"2021-11-02T21:36:39","modified_gmt":"2021-11-02T19:36:39","slug":"reliz-yadra-linux-5-15","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-15","title":{"rendered":"Lansarea nucleului Linux 5.15","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dup\u0103 dou\u0103 luni de dezvoltare, Linus Torvalds a prezentat versiunea nucleului Linux 5.15. Printre cele mai notabile modific\u0103ri se num\u0103r\u0103: un nou driver NTFS cu suport pentru scriere, modulul ksmbd pentru implementarea unui server SMB, subsistemul DAMON pentru monitorizarea accesului la memorie, primitive de blocare pentru modul \u00een timp real, suport pentru fs-verity \u00een Btrfs, apelul de sistem process_mrelease pentru sistemele de reac\u021bie la lipsa de memorie, modulul pentru atestarea la distan\u021b\u0103 dm-ima.        <\/p>\n<p>Noua versiune include 13499 de corecturi de la 1888 de dezvoltatori, dimensiunea patch-ului fiind de 42 MB (modific\u0103rile au afectat 10895 de fi\u0219iere, s-au ad\u0103ugat 632522 de linii de cod, iar 299966 de linii au fost \u0219terse). Aproximativ 45% din totalul modific\u0103rilor din 5.15 sunt legate de driverele de dispozitive, aproximativ 14% se refer\u0103 la actualizarea codului specific arhitecturilor hardware, 14% la stiva de re\u021bea, 6% la sistemele de fi\u0219iere \u0219i 3% la subsistemele interne ale nucleului.      <\/p>\n<p>Nout\u0103\u021bi principale:  <\/p>\n<ul>\n<li class=\"l\"> <b>Subsistemul de disc, I\/O \u0219i sistemele de fi\u0219iere<\/b>\n<ul>\n<li class=\"l\"> O nou\u0103 implementare a sistemului de fi\u0219iere NTFS, deschis\u0103 de compania Paragon Software, a fost acceptat\u0103 \u00een nucleu. Noul driver poate func\u021biona \u00een modul de scriere \u0219i suport\u0103 toate func\u021bionalit\u0103\u021bile versiunii actuale NTFS 3.1, inclusiv atributele extinse ale fi\u0219ierelor, listele de control al accesului (ACL), modul de compresie a datelor, gestionarea eficient\u0103 a spa\u021biilor libere \u00een fi\u0219iere (sparse) \u0219i redarea modific\u0103rilor din jurnal pentru restaurarea integrit\u0103\u021bii dup\u0103 e\u0219ecuri.\n<li class=\"l\"> \u00cen sistemul de fi\u0219iere Btrfs a fost implementat suportul pentru mecanismul fs-verity, utilizat pentru controlul transparent al integrit\u0103\u021bii \u0219i autenticit\u0103\u021bii fi\u0219ierelor individuale prin hash-uri criptografice asociate fi\u0219ierelor sau chei stocate \u00een zona de metadate. Anterior, fs-verity era disponibil doar pentru sistemele de fi\u0219iere Ext4 \u0219i F2fs.\n<p>\u00cen Btrfs a fost ad\u0103ugat \u0219i suportul pentru maparea identificatorilor utilizatorilor pentru sistemele de fi\u0219iere montate (anterior era suportat pentru sistemele de fi\u0219iere FAT, ext4 \u0219i XFS). Aceast\u0103 func\u021bionalitate permite asocierea fi\u0219ierelor unui anumit utilizator pe o parti\u021bie montat\u0103 de un alt utilizator cu un alt utilizator \u00een sistemul curent.   <\/p>\n<p>Printre alte modific\u0103ri \u00een Btrfs: accelerarea ad\u0103ug\u0103rii de chei \u00een indexul directorului pentru a \u00eembun\u0103t\u0103\u021bi performan\u021ba cre\u0103rii fi\u0219ierelor; posibilitatea de a lucra RAID0 cu un singur dispozitiv \u0219i RAID10 cu dou\u0103 (de exemplu, \u00een timpul reconfigur\u0103rii array-ului); op\u021biunea \u201erescue=ibadroots\u201d pentru a ignora arborele de extenturi incorecte; accelerarea opera\u021biei \u201esend\u201d; reducerea conflictelor de blocare \u00een timpul opera\u021biunilor de redenumire; posibilitatea utiliz\u0103rii sectorilor de 4K pe sisteme cu dimensiunea paginii de memorie de 64K.        <\/p>\n<li class=\"l\"> \u00cen XFS, a fost stabilizat\u0103 utilizarea \u00een FS a datelor dup\u0103 2038. A fost implementat un mecanism de dezactivare \u00eent\u00e2rziat\u0103 a inode-urilor \u0219i suport pentru instalarea \u0219i \u0219tergerea \u00eent\u00e2rziat\u0103 a atributelor fi\u0219ierelor. Pentru a evita problemele, a fost eliminat\u0103 posibilitatea dezactiv\u0103rii cotelor de disc pentru parti\u021biile deja montate (cotele pot fi dezactivate for\u021bat, dar num\u0103r\u0103toarea asociat\u0103 va continua, deci pentru o dezactivare complet\u0103 este necesar\u0103 remontarea).\n<li class=\"l\"> \u00cen EXT4, s-a lucrat la \u00eembun\u0103t\u0103\u021birea performan\u021bei scrierii bufferelor delalloc \u0219i a gestion\u0103rii fi\u0219ierelor orfane (orphan) care continu\u0103 s\u0103 existe deoarece sunt deschise, dar au r\u0103mas nef\u0103cute leg\u0103turi cu un director. Gestionarea opera\u021biunilor discard a fost mutat\u0103 din fluxul jbd2 kthread pentru a evita bloc\u0103rile opera\u021biunilor cu metadatele.\n<li class=\"l\"> \u00cen F2FS a fost ad\u0103ugat\u0103 op\u021biunea \u201ediscard_unit=block|segment|section\u201d pentru a lega opera\u021biile de discard (marcarea blocurilor eliberate care nu mai trebuie stocate fizic) de alinierea fa\u021b\u0103 de bloc, sector, segment sau sec\u021biune. A fost ad\u0103ugat suport pentru urm\u0103rirea modific\u0103rii \u00eent\u00e2rzierilor la I\/O.\n<li class=\"l\"> \u00cen sistemul de fi\u0219iere EROFS (Extendable Read-Only File System) a fost ad\u0103ugat suport pentru input\/output direct pentru fi\u0219ierele salvate f\u0103r\u0103 compresie, precum \u0219i suport pentru fiemap.\n<li class=\"l\"> \u00cen OverlayFS a fost implementat\u0103 procesarea corect\u0103 a flag-urilor de montare \u201eimmutable\u201d, \u201eappend-only\u201d, \u201esync\u201d \u0219i \u201enoatime\u201d.\n<li class=\"l\"> \u00cen NFS, a fost \u00eembun\u0103t\u0103\u021bit\u0103 gestionarea situa\u021biilor \u00een care serverul NFS a \u00eencetat s\u0103 r\u0103spund\u0103 la cereri. A fost ad\u0103ugat\u0103 posibilitatea de a monta de pe un dispozitiv deja utilizat <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/ro\/server\/dts-los-angeles\/\"   title=\"server\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3763\">server<\/a>, dar disponibil printr-o alt\u0103 adres\u0103 de re\u021bea.\n<li class=\"l\"> A \u00eenceput preg\u0103tirea pentru rescrierea subsistemului FSCACHE.\n<li class=\"l\"> A fost ad\u0103ugat suportul pentru part\u021biile EFI cu plasarea non-standard a tabelelor GPT.\n<li class=\"l\"> Mecanismul fanotify a fost implementat cu un nou flag FAN_REPORT_PIDFD, care permite specificarea pidfd \u00een metadatele returnate. Pidfd ajut\u0103 la gestionarea situa\u021biilor de reutilizare a PID pentru identificarea mai precis\u0103 a proceselor care acceseaz\u0103 fi\u0219ierele urm\u0103rite (pidfd este legat de un proces specific \u0219i nu se schimb\u0103, \u00een timp ce PID poate fi asociat cu un alt proces dup\u0103 finalizarea procesului curent asociat cu acest PID).\n<li class=\"l\"> Apelului de sistem move_mount() i s-a ad\u0103ugat posibilitatea de a ad\u0103uga puncte de montare \u00een grupuri comune existente, ceea ce rezolv\u0103 problemele legate de salvarea \u0219i restaurarea st\u0103rii proceselor \u00een instrumentele CRIU \u00een prezen\u021ba mai multor spa\u021bii de montare, folosite \u00een containere izolate.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 protec\u021bia \u00eempotriva st\u0103rilor de competi\u021bie ascunse, care ar putea duce la deteriorarea fi\u0219ierelor \u00een timpul citirii din cache \u00een timpul proces\u0103rii golurilor din fi\u0219ier.\n<li class=\"l\"> A fost oprit suportul pentru bloc\u0103rile obligatorii ale fi\u0219ierelor, implementate prin apeluri de sistem care duc la modificarea fi\u0219ierului. Din cauza posibilelor st\u0103ri de competi\u021bie, aceste bloc\u0103ri erau considerate nesigure \u0219i au fost declarate \u00eenvechite cu mul\u021bi ani \u00een urm\u0103.\n<li class=\"l\"> A fost eliminat\u0103 subsistemul LightNVM, care permitea accesul direct la SSD, ocolind stratul de emulare. LightNVM \u0219i-a pierdut relevan\u021ba dup\u0103 apari\u021bia standardelor NVMe care prev\u0103d posibilitatea zon\u0103rii (ZNS, Zoned Namespace).                      <\/ul>\n<li class=\"l\"> <b>Memorie \u0219i servicii de sistem<\/b>\n<ul>\n<li class=\"l\"> A fost implementat subsistemul DAMON (Data Access MONitor), care permite urm\u0103rirea activit\u0103\u021bii legate de accesul la date \u00een memoria RAM, legat\u0103 de un proces selectat care ruleaz\u0103 \u00een spa\u021biul utilizatorului. Subsistemul permite analiza c\u0103ror zone de memorie a accesat procesul pe parcursul \u00eentregii sale func\u021bion\u0103ri \u0219i care zone de memorie au r\u0103mas neutilizate. Printre caracteristicile DAMON se num\u0103r\u0103 \u00eenc\u0103rcarea redus\u0103 a CPU-ului, consumul mic de memorie, precizia ridicat\u0103 \u0219i cheltuielile constante previzibile, care nu depind de dimensiune. Subsistemul poate fi utilizat at\u00e2t de kernel pentru optimizarea gestion\u0103rii memoriei, c\u00e2t \u0219i de utilitare \u00een spa\u021biul utilizatorului pentru a \u00een\u021belege exact ce face procesul \u0219i pentru a optimiza utilizarea memoriei, de exemplu, eliberarea memoriei excesive sistemului.\n<li class=\"l\"> A fost implementat\u0103 o apelare de sistem process_mrelease, care permite accelerarea procesului de eliberare a memoriei pentru procesele care \u00ee\u0219i finalizeaz\u0103 execu\u021bia. \u00cen condi\u021bii normale, eliberarea resurselor \u0219i \u00eencheierea unui proces nu se realizeaz\u0103 instantaneu \u0219i, din diferite motive, poate fi \u00eent\u00e2rziat\u0103, ceea ce \u00eengreuneaz\u0103 activitatea sistemelor de r\u0103spuns precoce la lipsa de memorie din spa\u021biul utilizatorului, cum ar fi oomd (furnizat \u00een systemd) \u0219i lmkd (folosit \u00een Android). Prin apelul process_mrelease, aceste sisteme pot ini\u021bia mai predictibil returnarea memoriei de la procesele \u00eencheiate for\u021bat.\n<li class=\"l\"> Din ramura kernelului PREEMPT_RT, unde se dezvolt\u0103 suportul pentru func\u021bionarea \u00een timp real, au fost transferate variantele primitivului pentru organizarea blocajelor mutex, ww_mutex, rw_semaphore, spinlock \u0219i rwlock, bazate pe subsistemul RT-Mutex. \u00cen allocatorul SLUB slab, au fost aduse modific\u0103ri care \u00eembun\u0103t\u0103\u021besc func\u021bionarea \u00een modul PREEMPT_RT \u0219i reduc influen\u021ba asupra \u00eentreruperilor.\n<li class=\"l\"> \u00cen cgroup a fost ad\u0103ugat suportul pentru atributul planificatorului de sarcini SCHED_IDLE, care permite furnizarea acestui semn pentru toate procesele dintr-un anumit cgroup. Adic\u0103, aceste procese vor fi lansate doar atunci c\u00e2nd \u00een sistem nu exist\u0103 alte sarcini a\u0219tept\u00e2nd execu\u021bia. Spre deosebire de setarea atributului SCHED_IDLE pentru fiecare proces \u00een parte, legarea SCHED_IDLE la cgroup ia \u00een considerare greutatea relativ\u0103 a sarcinilor din interiorul grupului atunci c\u00e2nd se alege o sarcin\u0103 pentru execu\u021bie.\n<li class=\"l\"> Mecanismul de contabilizare a consumului de memorie \u00een cgroup a fost extins prin posibilitatea de a urm\u0103ri structuri de date suplimentare din kernel, inclusiv cele create pentru poll-ing, procesarea semnalelor \u0219i spa\u021biile de nume.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru planificarea asimetric\u0103 a leg\u0103rii sarcinilor la nucleele procesorului pe arhitecturi care permit unor CPU s\u0103 execute sarcini de 32 de bi\u021bi, \u00een timp ce altele func\u021bioneaz\u0103 doar \u00een modul de 64 de bi\u021bi (de exemplu, ARM). Noua modalitate permite, la planificarea execu\u021biei sarcinilor de 32 de bi\u021bi, s\u0103 se ia \u00een considerare doar CPU-urile care suport\u0103 sarcini de 32 de bi\u021bi.\n<li class=\"l\"> \u00cen interfa\u021ba de intrare\/ie\u0219ire asincron\u0103 io_uring a fost implementat suportul pentru deschiderea fi\u0219ierelor direct \u00een tabela de index fixed-file, f\u0103r\u0103 a folosi descriptor de fi\u0219ier, ceea ce permite accelerarea semnificativ\u0103 a unor tipuri de opera\u021biuni, \u00eens\u0103 contravine procesului tradi\u021bional Unix de utilizare a descriptorilor de fi\u0219ier pentru deschiderea fi\u0219ierelor.\n<p>\u00cen io_uring pentru subsistemul BIO (Block I\/O Layer) a fost implementat un nou mecanism de reciclare (\u201eBIO recycling\u201d), care permite reducerea costurilor \u00een gestionarea memoriei interne \u0219i cre\u0219te cu aproximativ 10% num\u0103rul de opera\u021biuni de I\/O procesate pe secund\u0103. De asemenea, \u00een io_uring a fost ad\u0103ugat suport pentru apelurile de sistem mkdirat(), symlinkat() \u0219i linkat().    <\/p>\n<li class=\"l\"> Pentru programele BPF a fost implementat\u0103 posibilitatea de a solicita \u0219i procesa evenimente ale unui timer. A fost ad\u0103ugat un iterator pentru socket-urile UNIX, precum \u0219i capacitatea de a ob\u021bine \u0219i seta op\u021biunile socket-urilor pentru setsockopt. \u00cen dumperul BTF a fost ad\u0103ugat suport pentru date tipizate.\n<li class=\"l\"> Pe sistemele NUMA cu diferite tipuri de memorie, care difer\u0103 prin performan\u021b\u0103, \u00een situa\u021bia epuiz\u0103rii spa\u021biului liber, a fost implementat transferul paginilor de memorie expulzate din memoria dinamic\u0103 (DRAM) \u00een memoria persistent\u0103 (Persistent Memory) \u00een loc de \u0219tergerea acestor pagini. Testele au ar\u0103tat c\u0103 o astfel de tactic\u0103 \u00eembun\u0103t\u0103\u021be\u0219te de obicei performan\u021ba pe aceste sisteme. De asemenea, pentru NUMA a fost implementat\u0103 posibilitatea aloc\u0103rii paginilor de memorie pentru un proces dintr-un set selectat de noduri NUMA.\n<li class=\"l\"> Pentru arhitectura ARC a fost implementat suport pentru tabele de pagini de memorie cu trei \u0219i patru niveluri, ceea ce va permite \u00een viitor suportul pentru procesoare ARC pe 64 de bi\u021bi.\n<li class=\"l\"> Pentru arhitectura s390 a fost implementat\u0103 posibilitatea utiliz\u0103rii mecanismului KFENCE pentru identificarea erorilor de manipulare a memoriei \u0219i a fost ad\u0103ugat suport pentru detectorul de st\u0103ri de competi\u021bie KCSAN.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru indexarea listei de mesaje, afi\u0219ate prin printk(), ceea ce permite extragerea tuturor acestor mesaje deodat\u0103 \u0219i urm\u0103rirea modific\u0103rilor \u00een spa\u021biul utilizatorului.\n<li class=\"l\"> \u00cen mmap() a fost suspendat suportul pentru op\u021biunea VM_DENYWRITE, iar codul kernel-ului a fost eliminat din utilizarea modului MAP_DENYWRITE, reduc\u00e2nd num\u0103rul de situa\u021bii care duc la blocarea scrierii \u00een fi\u0219ier cu eroarea ETXTBSY.\n<li class=\"l\"> \u00cen subsistemul de trasare a fost ad\u0103ugat\u0103 un nou tip de verific\u0103ri \u201eEvent probes\u201d, care pot fi ata\u0219ate la evenimentele de trasare existente, definind un format personalizat de ie\u0219ire.\n<li class=\"l\"> Atunci c\u00e2nd se compil\u0103 nucleul cu ajutorul compilatorului Clang, assemblerul \u00eencorporat din proiectul LLVM este acum activat implicit.\n<li class=\"l\"> \u00cen cadrul proiectului de eliminare a codului din kernel care genereaz\u0103 avertiz\u0103ri de compilare, a fost realizat un experiment cu activarea, implicit, a modului &#171;-Werror&#187;, \u00een care avertiz\u0103rile compilatorului sunt tratate ca erori. \u00cen timpul preg\u0103tirii versiunii 5.15, Linus a \u00eenceput s\u0103 accepte doar modific\u0103ri care nu genereaz\u0103 avertiz\u0103ri la compilarea kernel-ului \u0219i a activat compilarea cu &#171;-Werror&#187;, dar ulterior a fost de acord cu opinia c\u0103 este prematur s\u0103 se implementeze aceast\u0103 decizie \u0219i a am\u00e2nat activarea &#171;-Werror&#187; implicit. Controlul activ\u0103rii flag-ului &#171;-Werror&#187; la compilare se face prin parametrul WERROR, care, implicit, este setat pe valoarea COMPILE_TEST, adic\u0103 este activat doar pentru compil\u0103ri de testare.                    <\/ul>\n<li class=\"l\"> <b>Virtualizare \u0219i securitate<\/b>\n<ul>\n<li class=\"l\"> \u00cen Device Mapper (DM) a fost ad\u0103ugat un nou handler dm-ima cu implementarea mecanismului de atestare la distan\u021b\u0103 bazat pe subsistemul IMA (Integrity Measurement Architecture), care permite unui serviciu extern s\u0103 verifice starea subsistemelor nucleului pentru a se asigura de autenticitatea lor. \u00cen practic\u0103, dm-ima permite crearea, cu ajutorul Device Mapper, a unor stoc\u0103ri legate de sisteme externe \u00een cloud, \u00een care IMA verific\u0103 veridicitatea configura\u021biei DM target care este activat\u0103.\n<li class=\"l\"> \u00cen prctl() a fost implementat\u0103 o nou\u0103 op\u021biune PR_SPEC_L1D_FLUSH, care, atunci c\u00e2nd este activat\u0103, face ca nucleul s\u0103 \u0219tearg\u0103 con\u021binutul cache-ului de nivelul 1 (L1D) de fiecare dat\u0103 c\u00e2nd se schimb\u0103 contextul. Acest mod permite realizarea unei protec\u021bii suplimentare \u00eempotriva atacurilor prin canal secundar pentru cele mai importante procese, atacuri efectuate pentru a determina datele depozitate \u00een cache ca urmare a vulnerabilit\u0103\u021bilor cauzate de execu\u021bia speculativ\u0103 a instruc\u021biunilor \u00een CPU. Pre\u021bul activ\u0103rii PR_SPEC_L1D_FLUSH (care, implicit, nu este activat) este o sc\u0103dere semnificativ\u0103 a performan\u021bei.\n<li class=\"l\"> A fost implementat\u0103 posibilitatea de a compila kernel-ul cu ad\u0103ugarea \u00een GCC a flag-ului &#171;-fzero-call-used-regs=used-gpr&#187;, care asigur\u0103 resetarea tuturor registrelor \u00eenainte de returnarea controlului din func\u021bie. Aceast\u0103 op\u021biune permite protejarea \u00eempotriva scurgerilor de informa\u021bii din func\u021bii \u0219i reduce cu 20% num\u0103rul de blocuri utilizabile pentru construirea gadgetelor ROP (Return-Oriented Programming) \u00een exploate.\n<li class=\"l\"> A fost implementat\u0103 posibilitatea de a compila nuclee pentru arhitectura ARM64 sub form\u0103 de clien\u021bi pentru hypervisorul Hyper-V.\n<li class=\"l\"> A fost propus un nou cadru pentru dezvoltarea driverelor &#171;VDUSE&#187;, care permite implementarea dispozitivelor virtuale de tip block \u00een spa\u021biul utilizatorului \u0219i utilizarea Virtio ca transport pentru accesul din sistemele gazd\u0103.\n<li class=\"l\"> A fost ad\u0103ugat driverul Virtio pentru magistrala I2C, care permite emularea controlerelor I2C \u00een modul paravirtualizat folosind backend-uri separate.\n<li class=\"l\"> A fost ad\u0103ugat driverul Virtio gpio-virtio, care permite sistemelor invitate accesul la liniile GPIO furnizate de sistemul gazd\u0103.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 posibilitatea de a restric\u021biona accesul la paginile de memorie pentru driverele de dispozitive cu suport DMA pe sisteme f\u0103r\u0103 I\/O MMU (unitate de gestionare a memoriei).\n<li class=\"l\"> \u00cen hypervisorul KVM a fost implementat\u0103 posibilitatea de a exporta statistici sub form\u0103 de histograme liniare \u0219i logaritmice.          <\/ul>\n<li class=\"l\"> <b>Subsystema de re\u021bea<\/b>\n<ul>\n<li class=\"l\"> \u00cen kernel a fost ad\u0103ugat modul ksmbd, care implementeaz\u0103 un server de fi\u0219iere ce folose\u0219te protocolul SMB3. Modulul completeaz\u0103 implementarea anterioar\u0103 a clientului SMB \u0219i, spre deosebire de serverul SMB care func\u021bioneaz\u0103 \u00een spa\u021biul utilizatorului, este mai eficient din punct de vedere al performan\u021bei, consumului de memorie \u0219i integr\u0103rii cu func\u021biile avansate ale kernel-ului. Ksmbd este prezentat ca o extensie performant\u0103 \u0219i gata de utilizare pe dispozitive \u00eencorporate, integrabil\u0103, la nevoie, cu instrumentele \u0219i bibliotecile Samba. Printre func\u021biile ksmbd se remarc\u0103 suportul \u00eembun\u0103t\u0103\u021bit pentru tehnologia de caching distribuit de fi\u0219iere (leasing SMB) pe sistemele locale, ceea ce permite reducerea semnificativ\u0103 a traficului. \u00cen plus, se pl\u0103nuie\u0219te ad\u0103ugarea suportului pentru RDMA (&#171;smbdirect&#187;) \u0219i pentru extensiile protocolului, legate de \u00eent\u0103rirea fiabilit\u0103\u021bii cript\u0103rii \u0219i de verificarea semn\u0103turilor digitale.\n<li class=\"l\"> \u00cen clientul CIFS a fost \u00eentrerupt\u0103 suportul pentru NTLM \u0219i algoritmi de autentificare mai pu\u021bin fiabili, baza\u021bi pe algoritmul DES \u0219i utiliza\u021bi \u00een protocolul SMB1.\n<li class=\"l\"> \u00cen implementarea podurilor de re\u021bea pentru VLAN, a fost ad\u0103ugat\u0103 suport pentru multicast.\n<li class=\"l\"> \u00cen driverul bonding, utilizat pentru agregarea interfe\u021belor de re\u021bea, s-a ad\u0103ugat suport pentru subsistemul XDP (eXpress Data Path), care permite manipularea pachetelor de re\u021bea \u00eenainte ca acestea s\u0103 fie procesate de stiva de re\u021bea a nucleului Linux.\n<li class=\"l\"> \u00cen stiva wireless mac80211 a fost implementat suport pentru 6GHZ STA (Special Temporary Authorization) \u00een modurile LPI, SP \u0219i VLP, precum \u0219i posibilitatea de a seta TWT (Target Wake Time) separate \u00een modul punct de acces.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru protocolul MCTP (Management Component Transport Protocol), folosit pentru interac\u021biunea \u00eentre controlerele de gestionare \u0219i dispozitivele corelate (procesori gazd\u0103, dispozitive periferice etc.).\n<li class=\"l\"> Continuarea integr\u0103rii \u00een nucleul MPTCP (MultiPath TCP), o extensie a protocolului TCP pentru organizarea conexiunilor TCP cu livrarea pachetelor simultan pe mai multe c\u0103i prin diferite interfe\u021be de re\u021bea legate de adrese IP diferite. \u00cen noua versiune, a fost ad\u0103ugat suport pentru adrese \u00een modul fullmesh.\n<li class=\"l\"> \u00cen netfilter au fost ad\u0103ugate manipulatoare de fluxuri de re\u021bea \u00eencapsulate \u00een protocolul SRv6 (Segment Routing IPv6).\n<li class=\"l\"> A fost ad\u0103ugat suport sockmap pentru socket-uri Unix pentru streaming.              <\/ul>\n<li class=\"l\"> <b>Echipament<\/b>\n<ul>\n<li class=\"l\"> Driverul amdgpu include suport pentru APU Cyan Skillfish (echipat cu GPU Navi 1x). Suport pentru codec-uri video a fost implementat pentru APU Yellow Carp. Suportul pentru GPU Aldebaran a fost \u00eembun\u0103t\u0103\u021bit. Au fost ad\u0103ugate noi identificatori pentru pl\u0103cile bazate pe GPU Navi 24 \u00abBeige Goby\u00bb \u0219i RDNA2. A fost propus\u0103 o implementare \u00eembun\u0103t\u0103\u021bit\u0103 a ecranelor virtuale (VKMS). Suportul pentru monitorizarea temperaturii cipurilor AMD Zen 3 a fost realizat.\n<li class=\"l\"> \u00cen driverul amdkfd (pentru GPU discrete, cum ar fi Polaris) a fost implementat un manager de memorie virtual\u0103 partajat\u0103 (SVM, shared virtual memory) pe baza subsistemului HMM (Heterogeneous Memory Management), care permite utilizarea dispozitivelor cu blocuri proprii de gestionare a memoriei (MMU, memory management unit) ce pot accesa memoria principal\u0103. De asemenea, prin intermediul HMM poate fi organizat un spa\u021biu de adresare comun \u00eentre GPU \u0219i CPU, \u00een care GPU poate accesa memoria principal\u0103 a procesului.\n<li class=\"l\"> \u00cen driverul i915 pentru pl\u0103cile grafice Intel, s-a extins utilizarea managerului de gestionare a memoriei video TTM \u0219i s-a inclus posibilitatea de gestionare a consumului de energie pe baza GuC (Graphics micro Controller). A \u00eenceput preg\u0103tirea pentru implementarea suportului pentru placa grafic\u0103 Intel ARC Alchemist \u0219i GPU Intel Xe-HP.\n<li class=\"l\"> Driverul nouveau implementa controlul ilumin\u0103rii panourilor eDP folosind DPCD (Date de Configurare DisplayPort).\n<li class=\"l\"> \u00cen driverul msm a fost ad\u0103ugat\u0103 suportul pentru GPU Adreno 7c Gen 3 \u0219i Adreno 680.\n<li class=\"l\"> Pentru cipul Apple M1 a fost implementat driverul IOMMU.\n<li class=\"l\"> A fost ad\u0103ugat driverul audio pentru sistemele bazate pe APU AMD Van Gogh.\n<li class=\"l\"> \u00cen ramura staging a fost ad\u0103ugat driverul Realtek R8188EU, care a \u00eenlocuit versiunea veche a driverului (rtl8188eu) pentru chipseturile wireless Realtek RTL8188EU 802.11 b\/g\/n.\n<li class=\"l\"> \u00cen compunerea sa, a fost acceptat driverul ocp_pt pentru placa PCIe dezvoltat\u0103 de compania Meta (Facebook) cu implementarea ceasurilor atomice miniaturale \u0219i a receptorului GNSS, care pot fi utilizate pentru organizarea lucrului separat <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/ro\/server\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1616\">servere<\/a> sincronizarea timpului precis.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 suportul pentru smartphone-urile Sony Xperia 10II (Snapdragon 665), Xiaomi Redmi 2 (Snapdragon MSM8916), Samsung Galaxy S3 (Snapdragon MSM8226), Samsung Gavini\/Codina\/Kyle.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 suportul pentru ARM SoC \u0219i pl\u0103cile NVIDIA Jetson TX2 NX Developer Kit, Sancloud BBE Lite, PicoITX, DRC02, SolidRun SolidSense, SKOV i.MX6, Nitrogen8, Traverse Ten64, GW7902, Microchip SAMA7, Qualcomm Snapdragon SDM636\/SM8150, Renesas R-Car H3e-2G\/M3e-2G, Marvell CN913x, ASpeed AST2600 (pl\u0103ci server Facebook Cloudripper, Elbert \u0219i Fuji), 4KOpen STiH418-b2264.\n<li class=\"l\"> A fost ad\u0103ugat suportul pentru panourile LCD Gopher 2b, EDT ETM0350G0DH6\/ETMV570G2DHU, LOGIC Technologies LTTD800480070-L6WH-RT, Multi-Innotechnology MI1010AIT-1CP1, Innolux EJ030NA 3.0, ilitek ili9341, E Ink VB3300-KCA, Samsung ATNA33XC20, Samsung DB7430, WideChips WS2401.\n<li class=\"l\"> A fost ad\u0103ugat driverul LiteETH cu suport pentru controlerele Ethernet utilizate \u00een SoC-uri programabile LiteX (pentru FPGA).\n<li class=\"l\"> \u00cen driverul usb-audio a fost ad\u0103ugat\u0103 op\u021biunea lowlatency pentru a controla activarea func\u021bion\u0103rii \u00een mod de laten\u021b\u0103 minim\u0103. De asemenea, a fost ad\u0103ugat\u0103 op\u021biunea quirk_flags pentru a transmite set\u0103rile specifice dispozitivului.      <\/ul>\n<\/ul>\n<p>\u00cen acela\u0219i timp, Funda\u021bia Latin American Free Software a creat o variant\u0103 complet liber\u0103 a nucleului 5.15 \u2014 Linux-libre 5.15-gnu, cur\u0103\u021bat\u0103 de elemente firmware \u0219i drivere care con\u021bin componente nesigure sau p\u0103r\u021bi de cod a c\u0103ror utilizare este restric\u021bionat\u0103 de produc\u0103tor. \u00cen aceast\u0103 nou\u0103 versiune, a fost implementat un mesaj de logare la finalizarea procesului de cur\u0103\u021bare. Problemele la generarea pachetelor folosind mkspec au fost corectate, iar suportul pentru pachetele snap a fost \u00eembun\u0103t\u0103\u021bit. Au fost eliminate unele avertismente care ap\u0103reau la procesarea fi\u0219ierului header firmware.h. A fost permis\u0103 generarea unor tipuri de avertismente (\u00abformat-extra-args\u00bb, comentarii, func\u021bii \u0219i variabile neutilizate) \u00een timp ce se compileaz\u0103 \u00een modul \u00ab-Werror\u00bb. A fost ad\u0103ugat\u0103 cur\u0103\u021barea driverului gehc-achc. Codul pentru cur\u0103\u021barea blob-urilor din driverele \u0219i subsistemele adreno, btusb, btintel, brcmfmac, aarch64 qcom a fost actualizat. Cur\u0103\u021barea driverelor prism54 (eliminat) \u0219i rtl8188eu (\u00eenlocuit cu r8188eu) a fost oprit\u0103.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56079\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u043d\u043e\u0432\u044b\u0439 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 NTFS \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438, \u043c\u043e\u0434\u0443\u043b\u044c ksmbd \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 SMB-\u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 DAMON \u0434\u043b\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043f\u0430\u043c\u044f\u0442\u0438, \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043e\u043a \u0434\u043b\u044f \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 fs-verity \u0432 Btrfs, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 process_mrelease \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c \u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u043d\u0435\u0445\u0432\u0430\u0442\u043a\u0443 \u043f\u0430\u043c\u044f\u0442\u0438, \u043c\u043e\u0434\u0443\u043b\u044c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0439 \u0430\u0442\u0442\u0435\u0441\u0442\u0430\u0446\u0438\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-102190","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-15\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-15\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-11-02T19:36:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-11-02T19:36:39+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lansarea nucleului Linux 5.15 | ProHoster","description":"Dup\u0103 dou\u0103 luni de dezvoltare, Linus Torvalds a prezentat lansarea nucleului Linux 5.15.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-15","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.15.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-15","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-11-02T19:36:39+00:00","article:modified_time":"2021-11-02T19:36:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"102190","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-11-02 19:38:03","updated":"2026-02-22 15:30:33","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/102190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=102190"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/102190\/revisions"}],"predecessor-version":[{"id":162291,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/102190\/revisions\/162291"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=102190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=102190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=102190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}