{"id":35977,"date":"2019-10-31T22:08:56","date_gmt":"2019-10-31T19:08:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/reliz-yadra-linux-5-2\/"},"modified":"2019-10-31T22:08:56","modified_gmt":"2019-10-31T19:08:56","slug":"reliz-yadra-linux-5-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-5-2","title":{"rendered":"Rilascio del kernel Linux 5.2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dopo due mesi di sviluppo, Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2019\/7\/7\/281\">ha presentato<\/a><\/noindex> rilascio del kernel <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.2<\/a><\/noindex>. Tra le modifiche pi\u00f9 significative: modalit\u00e0 di funzionamento Ext4 che non tiene conto del case sensitive, chiamate di sistema separate per il montaggio del FS, driver per GPU Mali 4xx\/6xx\/7xx, possibilit\u00e0 di gestione delle modifiche ai valori sysctl nei programmi BPF, modulo device-mapper dm-dust, protezione contro gli attacchi MDS, supporto per Sound Open Firmware per DSP, ottimizzazione delle prestazioni BFQ, realizzazione della sottosistema PSI (Pressure Stall Information) per l'uso in Android.<\/p>\n<p>Nella nuova versione sono stati inclusi 15100 aggiornamenti da 1882 sviluppatori,<br \/>\nDimensione della patch \u2014 62 MB (le modifiche hanno interessato 30889 file, aggiunte 625094 righe di codice, rimosse 531864 righe). Circa il 45% di tutto ci\u00f2 presentato in 5.2<br \/>\n\u00e8 legato ai driver dei dispositivi, circa il 21% delle modifiche ha<br \/>\na che fare con l'aggiornamento del codice specifico per architetture hardware, il 12%<br \/>\n\u00e8 legato allo stack di rete, il 3% \u2014 ai file system e il 3% a sottosistemi interni<br \/>\ndel kernel. Il 12,4% di tutte le modifiche \u00e8 stato preparato da Intel, il 6,3% \u2014 da Red Hat, il 5,4% \u2014 da Google, il 4,0% \u2014 da AMD, il 3,1% \u2014 da SUSE, il 3% \u2014 da IBM, il 2,7% \u2014 da Huawei, il 2,7% \u2014 da Linaro, il 2,2% \u2014 da ARM, l'1,6% \u2014 da Oracle.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.2\">Principali<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/788532\/\">novit\u00e0<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Sottosistema di disco, input\/output e file system<\/b>\n<ul>\n<li class=\"l\"> Per Ext4 \u00e8 stata aggiunta  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50581\">highlightsFromPoint()<\/a><\/noindex> lavoro senza distinzione tra maiuscole e minuscole nei nomi dei file, che viene attivato solo in associazione a singole cartelle vuote utilizzando un nuovo attributo \u00ab+F\u00bb (EXT4_CASEFOLD_FL). Quando questo attributo viene impostato su una cartella, tutte le operazioni con file e sottocartelle all'interno saranno eseguite senza distinzione tra maiuscole e minuscole, incluso il rispetto della distinzione durante le operazioni di ricerca e apertura dei file (ad esempio, i file Test.txt, test.txt e test.TXT in tali cartelle saranno considerati identici). Di default, il file system continua a essere sensibile alle maiuscole, ad eccezione delle cartelle con l'attributo \u00abchattr +F\u00bb;\n<li class=\"l\"> Sono state unificate le funzioni di gestione dei caratteri UTF-8 nei nomi dei file, che vengono applicate durante le operazioni di confronto e normalizzazione delle stringhe;\n<li class=\"l\"> In XFS \u00e8 stata aggiunta un'infrastruttura per il monitoraggio dello stato del filesystem e un nuovo ioctl per richiedere lo stato di funzionalit\u00e0. \u00c8 stata implementata una funzione sperimentale per la verifica online (online scrub) dei contatori superblock.\n<li class=\"l\"> Aggiunto un nuovo modulo device-mapper \u00ab<noindex>dm-dust<\/noindex>\u00ab, che consente di simulare l'emergere di settori difettosi su un supporto o errori nella lettura dal disco. Il modulo semplifica il debug e il testing delle applicazioni e dei vari sistemi di archiviazione in presenza di potenziali guasti;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/784267\/\">Condotta<\/a><\/noindex> ottimizzazione significativa delle prestazioni del pianificatore di input\/output BFQ. In condizioni di elevato carico di input\/output, le ottimizzazioni apportate <noindex><a rel=\"nofollow\" href=\"https:\/\/algo.ing.unimo.it\/people\/paolo\/disk_sched\/results.php\">permettono<\/a><\/noindex> fino all'80% di riduzione del tempo di operazioni come l'avvio delle applicazioni;\n<li class=\"l\"> Aggiunta una serie di chiamate di sistema per il montaggio dei file system: <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=24dcb3d90a1f67fe08c68a004af37df059d74005\">fsopen()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a07b20004793d8926f78d63eb5980559f7813404\">open_tree()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=cf3cba4a429be43e5527a3f78859b1bfd9ebc5fb\">fspick()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=93766fbd2696c2c4453dd8e1070977e9cd4e6b6d\">fsmount()<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ecdab150fddb42fe6a739335257949220033b782\">fsconfig()<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=2db154b3ea8e14b04fee23e3fdfd5e9d17fbc6ae\">move_mount()<\/a><\/noindex>. Queste chiamate di sistema consentono di gestire separatamente le diverse fasi del montaggio (gestire il superblocco, ottenere informazioni sul FS, montare, allegare a un punto di montaggio), che in precedenza venivano eseguite tramite una chiamata di sistema generale mount(). Le chiamate separate offrono la possibilit\u00e0 di eseguire scenari di montaggio pi\u00f9 complessi e di effettuare operazioni distinte come la riconfigurazione del superblocco, l'attivazione delle opzioni, la modifica del punto di montaggio e il trasferimento in un altro spazio dei nomi. Inoltre, la gestione separata consente di identificare con precisione le cause dei codici di errore e di stabilire pi\u00f9 fonti per file system a strati, come overlayfs;\n<li class=\"l\"> Nel'interfaccia per l'input\/output asincrono io_uring \u00e8 stata aggiunta una nuova operazione IORING_OP_SYNC_FILE_RANGE, che esegue azioni equivalenti alla chiamata di sistema <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man2\/sync_file_range.2.html\">sync_file_range()<\/a><\/noindex>, ed \u00e8 stata implementata la possibilit\u00e0 di registrare eventfd con io_uring e di ricevere notifiche al termine delle operazioni;\n<li class=\"l\"> Per il file system CIFS \u00e8 stato aggiunto ioctl FIEMAP, che fornisce un mapping efficiente degli extent, cos\u00ec come il supporto per le modalit\u00e0 SEEK_DATA e SEEK_HOLE;\n<li class=\"l\"> Nella sottosistema FUSE <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ad2ba64dd489805e7ddf5fecf166cae1e09fc5c0\">\u00e8 stato proposto<\/a><\/noindex> API per la gestione della cache dei dati;\n<li class=\"l\"> In Btrfs \u00e8 stata ottimizzata l'implementazione dei qgroups e aumentata la velocit\u00e0 di esecuzione di fsync per file con pi\u00f9 hard link. Migliorato il codice di verifica dell'integrit\u00e0 dei dati, che ora tiene conto di possibili danneggiamenti delle informazioni in RAM prima di scrivere i dati su disco;\n<li class=\"l\"> In CEPH \u00e8 stata aggiunta la supporto per l'esportazione di snapshot tramite NFS;\n<li class=\"l\"> Migliorata l'implementazione del montaggio NFSv4 in modalit\u00e0 \u00absoft\u00bb (in caso di errore di accesso al server in modalit\u00e0 \u00absoft\u00bb, la chiamata restituisce immediatamente un codice di errore, mentre in modalit\u00e0 \u00abhard\u00bb il controllo non viene restituito fino a quando il file system non riemerger\u00e0 o non scadr\u00e0 il timeout). La nuova versione offre una gestione pi\u00f9 precisa del timeout, accelera il recupero dopo un guasto e introduce una nuova opzione di montaggio \u00absofterr\u00bb, che consente di modificare il codice di errore (ETIMEDOUT) restituito al verificarsi di un timeout;\n<li class=\"l\"> Nell'API nfsdcld, progettato per monitorare lo stato dei client NFS, \u00e8 stata fornita la possibilit\u00e0 di seguire correttamente lo stato del client da parte del server NFS durante il riavvio. Pertanto, il demone nfsdcld pu\u00f2 ora fungere da gestore nfsdcltrack;\n<li class=\"l\"> Per AFS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=6c6c1d63c243025956f061e67fff3a615aa0f6be\">\u00e8 stata aggiunta<\/a><\/noindex> emulazione dei blocchi di intervalli di byte nei file (<noindex><a rel=\"nofollow\" href=\"http:\/\/docs.openafs.org\/ReleaseNotesWindows\/ch03s19.html\">Blocco intervallo byte<\/a><\/noindex>);\n<\/ul>\n<li class=\"l\"> <b>Virtualizzazione e sicurezza<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stato effettuato un lavoro per rimuovere le aree nel kernel che consentono l'esecuzione di codice da aree di memoria mappate come scrivibili, bloccando cos\u00ec potenziali vulnerabilit\u00e0 che potrebbero essere sfruttate durante un attacco;\n<li class=\"l\"> Aggiunto un nuovo parametro della riga di comando del kernel \u00abmitigations=\u00bb, che fornisce un modo semplificato per gestire l'attivazione di determinate tecniche di protezione contro vulnerabilit\u00e0 legate all'esecuzione speculativa delle istruzioni sulla CPU. Impostare \u00abmitigations=off\u00bb disattiva tutti i metodi esistenti, mentre la modalit\u00e0 predefinita \u00abmitigations=auto\u00bb attiva la protezione, ma non influisce sull'uso di Hyper-Threading. La modalit\u00e0 \u00abmitigations=auto,nosmt\u00bb disattiva ulteriormente Hyper-Threading, se richiesto dal metodo di protezione.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/0d7a78643f6972214e99205b364e508f8ea9598e\">\u00c8 stata aggiunta<\/a><\/noindex> supporto per la firma elettronica secondo GOST R 34.10-2012 (RFC 7091, ISO\/IEC 14888-3), <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0d7a78643f6972214e99205b364e508f8ea9598e\">sviluppato<\/a><\/noindex> Di Vitaliy Chikunov di \u00abBazalt SPO\u00bb. L'implementazione integrata di TLS ha aggiunto il supporto per AES128-CCM. Nel modulo crypto_simd \u00e8 stato aggiunto il supporto per algoritmi AEAD;\n<li class=\"l\"> In Kconfig <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f671e58159adea641f76c56d1f0bbdcb3c524ff\">\u00e8 stata aggiunta<\/a><\/noindex> una sezione separata \u00abkernel hardening\u00bb con opzioni per rafforzare la protezione del kernel. Attualmente, nella nuova sezione sono state raccolte solo impostazioni per abilitare controlli potenziati dei plug-in GCC;\n<li class=\"l\"> Il codice del kernel \u00e8 quasi <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=b4b52b881cf0\">\u00e8 stato rimosso<\/a><\/noindex> da espressioni continue case in switch (senza return o break dopo ogni blocco case). Restano da correggere 32 dei 2311 casi di utilizzo simile di switch, dopo di che sar\u00e0 possibile applicare il mode \u00ab-Wimplicit-fallthrough\u00bb durante la compilazione del kernel;\n<li class=\"l\"> Per l'architettura PowerPC \u00e8 stato implementato il supporto per meccanismi hardware che limitano i percorsi di accesso indesiderati del kernel ai dati nell'area utente;\n<li class=\"l\"> \u00c8 stato aggiunto il codice per il blocco  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50684\">attacchi<\/a><\/noindex> della classe MDS (Microarchitectural Data Sampling) nei processori Intel. \u00c8 possibile controllare la vulnerabilit\u00e0 del sistema tramite la variabile SysFS \u00ab\/sys\/devices\/system\/cpu\/vulnerabilities\/mds\u00bb; <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/html\/latest\/admin-guide\/hw-vuln\/mds.html\">Disponibile<\/a><\/noindex> due modalit\u00e0 di protezione: completa, che richiede la presenza di microcodice aggiornato, e una modalit\u00e0 bypass, che non garantisce completamente la pulizia dei buffer CPU durante il passaggio di controllo allo spazio utente o a un sistema guest. Per gestire le modalit\u00e0 di protezione, \u00e8 stato aggiunto al kernel il parametro \u00abmds=\u00bb, che pu\u00f2 assumere i valori \u00abfull\u00bb, \u00abfull,nosmt\u00bb (+ disabilitazione dell'Hyper-Threading) e \u00aboff\u00bb;\n<li class=\"l\"> Sui sistemi x86-64 \u00e8 stata aggiunta la protezione \u00abstack guard-page\u00bb per IRQ, meccanismi di debug e gestori di eccezioni, il cui scopo \u00e8 di inserire, al confine dello stack, pagine di memoria le cui operazioni portano alla generazione di un'eccezione (page-fault);\n<li class=\"l\"> Aggiunta la configurazione sysctl vm.unprivileged_userfaultfd, che gestisce la possibilit\u00e0 di utilizzare la chiamata di sistema userfaultfd() da processi non privilegiati;\n<\/ul>\n<li class=\"l\"> <b>Sottosistema di rete<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d15662682db232da77136cd348f4c9df312ca6f9\">\u00c8 stata aggiunta<\/a><\/noindex> supporto per gateway IPv6 per rotte IPv4. Ad esempio, ora \u00e8 possibile specificare regole di routing del tipo \u00abip ro add 172.16.1.0\/24 via inet6 2001:db8::1 dev eth0\u00bb;\n<li class=\"l\"> Per ICMPv6 sono stati implementati le chiamate ioctl icmp_echo_ignore_anycast e icmp_echo_ignore_multicast per ignorare ICMP ECHO per anycast e<br \/>\nindirizzi multicast. <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0bc199854405543b0debe67c735c0aae94f1d319\">\u00c8 stata aggiunta<\/a><\/noindex> possibilit\u00e0 di limitare l'intensit\u00e0 dell'elaborazione dei pacchetti ICMPv6;<\/p>\n<li class=\"l\"> Per il protocollo mesh B.A.T.M.A.N. (\u00abBetter Approach To Mobile Adhoc Networking\u00bb), che consente di creare reti decentralizzate, ogni nodo \u00e8 collegato tramite nodi vicini, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/32e727449c792b689c2a06a8b4cc9fef6270c5a7\">\u00e8 stata aggiunta<\/a><\/noindex> supporto per la traduzione da multicast a unicast, nonch\u00e9 possibilit\u00e0 di gestione tramite sysfs;\n<li class=\"l\"> In ethtool <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=3aeb0803f7ea11ff2fc478f7d58f2b8e713af380\">\u00e8 stata aggiunta<\/a><\/noindex> nuovo parametro Fast Link Down, che consente di ridurre il tempo di arrivo delle informazioni sull'evento di disconnessione del link per 1000BaseT (in condizioni normali il ritardo pu\u00f2 arrivare a 750ms);\n<li class=\"l\"> \u00c8 stata introdotta <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/1713cb37bf671e5d98919536941a8b56337874fd\">la possibilit\u00e0<\/a><\/noindex> binding dei tunnel Foo-Over-UDP a un indirizzo specifico, interfaccia di rete o socket (in precedenza il binding veniva effettuato solo tramite l'indirizzo generale);\n<li class=\"l\"> Nel stack wireless <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=cb74e9775871f8c82a1297cf76209f10ab5bbe3d\">\u00e8 garantita<\/a><\/noindex> possibilit\u00e0 di implementare gli handler<br \/>\nOWE (Opportunistic Wireless Encryption) nello spazio utente;<\/p>\n<li class=\"l\"> In Netfilter nelle catene nat \u00e8 stato aggiunto il supporto per la famiglia di indirizzi inet (ad esempio, ora \u00e8 possibile utilizzare una regola di traduzione per gestire ipv4 e ipv6, senza separare le regole per ipv4 e ipv6);\n<li class=\"l\"> In netlink <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ef6243acb4782df587a4d7d6c310fa5b5d82684b\">\u00e8 stata aggiunta<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8cb081746c031fb164089322e2336a0bf5b3070c\">modalit\u00e0<\/a><\/noindex> strict per il controllo rigoroso della correttezza di tutti i messaggi e attributi, nel quale non \u00e8 consentito superare la dimensione prevista degli attributi e vietato aggiungere dati supplementari alla fine dei messaggi;\n<\/ul>\n<li class=\"l\"> <b>Memoria e servizi di sistema<\/b>\n<ul>\n<li class=\"l\"> Nel sistema di chiamata clone() \u00e8 stato aggiunto il flag CLONE_PIDFD, che, se specificato, restituisce al processo padre un descrittore di file \u00abpidfd\u00bb, identificato con il processo figlio creato. Questo descrittore di file, ad esempio, pu\u00f2 essere usato per inviare segnali senza temere conflitti di gare (subito dopo l'invio del segnale, il PID target potrebbe essere liberato a causa della terminazione del processo e occupato da un altro processo);\n<li class=\"l\"> Per la seconda versione dei cgroups \u00e8 stata aggiunta la funzionalit\u00e0 del controller freezer, che consente di sospendere l'attivit\u00e0 in un cgroup e liberare temporaneamente alcune risorse (CPU, input\/output e potenzialmente anche memoria) per l'esecuzione di altri compiti. La gestione avviene tramite i file di controllo cgroup.freeze e cgroup.events nell'albero dei cgroup. Scrivere 1 in cgroup.freeze congela i processi nell'attuale cgroup e in tutti i gruppi figli. Poich\u00e9 il congelamento richiede del tempo, \u00e8 stato inoltre proposto il file cgroup.events tramite il quale \u00e8 possibile sapere quando l'operazione \u00e8 completata;\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e1cf33aafb84\">Fornito<\/a><\/noindex> l'esportazione degli attributi di memoria, associati a ciascun nodo in sysfs, il che consente di determinare, dallo spazio utente, la natura dell'elaborazione delle banche di memoria nei sistemi con memoria eterogenea;\n<li class=\"l\"> Raffinato il sottosistema PSI (Pressure Stall Information), che consente di analizzare le informazioni sui tempi di attesa per ottenere diverse risorse (CPU, memoria, input\/output) per compiti specifici o set di processi in cgroup. Con PSI, i gestori nello spazio utente possono valutare pi\u00f9 precisamente il livello di carico del sistema e la natura del rallentamento, rispetto al Load Average. Nella nuova versione \u00e8 stata assicurata la possibilit\u00e0 di configurare le soglie di sensibilit\u00e0 e di utilizzare la chiamata poll() per ricevere notifiche sul verificarsi dei valori soglia impostati nel determinato intervallo di tempo. Questa possibilit\u00e0 consente di organizzare in Android il monitoraggio della carenza di memoria in una fase iniziale, determinare la fonte dei problemi e terminare applicazioni non importanti, senza arrivare a creare problemi visibili per l'utente. Durante i test di stress, gli strumenti di monitoraggio dell'uso della memoria basati su PSI hanno mostrato 10 volte meno falsi allarmi rispetto alle statistiche di vmpressure;\n<li class=\"l\"> \u00c8 stata ottimizzata l'implementazione del codice per il controllo dei programmi BPF, riuscendo a eseguire il controllo per programmi di grandi dimensioni fino a 20 volte pi\u00f9 velocemente. L'ottimizzazione ha permesso di aumentare il limite della dimensione dei programmi BPF da 4096 a un milione di istruzioni;\n<li class=\"l\"> Per i programmi BPF <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d859900c4c56\">fornita<\/a><\/noindex> la possibilit\u00e0 di accedere ai dati globali, consentendo di definire variabili e costanti globali nei programmi;\n<li class=\"l\"> Aggiunto <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/torvalds\/linux\/blob\/master\/Documentation\/bpf\/prog_cgroup_sysctl.rst\">API<\/a><\/noindex>, che consente di controllare dalle programmi BPF le modifiche ai parametri sysctl;\n<li class=\"l\"> Per l'architettura MIPS32 \u00e8 stato implementato un compilatore JIT per la macchina virtuale eBPF;\n<li class=\"l\"> Per l'architettura PowerPC a 32 bit \u00e8 stata aggiunta la supporto per lo strumento di debug KASan (Kernel address sanitizer), che identifica errori nella gestione della memoria;\n<li class=\"l\"> Sui sistemi x86-64 \u00e8 stato rimosso il limite di posizionamento dei dump di stato in caso di crash del kernel (crash-dump) in aree di memoria superiori a 896MB;\n<li class=\"l\"> Per l'architettura s390 \u00e8 stata implementata la supporto per la randomizzazione dello spazio degli indirizzi del kernel (KASLR) e la possibilit\u00e0 di verifica delle firme digitali al caricamento del kernel tramite kexec_file_load();\n<li class=\"l\"> Per l'architettura PA-RISC \u00e8 stata aggiunta la supporto per il debugger del kernel (KGDB), i punti di interruzione e le kprobes;\n<\/ul>\n<li class=\"l\"> <b>Apparecchiatura<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stato incluso il driver <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a1d2a6339961efc078208dc3b2f006e9e9a8e119\">Lima<\/a><\/noindex> per GPU Mali 400\/450, utilizzato in molte schede pi\u00f9 vecchie basate sull'architettura ARM. Per le GPU Mali pi\u00f9 recenti \u00e8 stato aggiunto il driver Panfrost, che supporta chip basati sulle microarchitetture Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) e Bifrost (Mali G3x, G5x, G7x);\n<li class=\"l\"> \u00c8 stata aggiunta la supporto per i dispositivi audio che utilizzano firmware aperti <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48266\">Sound Open Firmware<\/a><\/noindex> (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.sofproject.org\/\">SOF<\/a><\/noindex>). Nonostante la presenza di driver aperti, il codice dei firmware per i chip audio \u00e8 rimasto chiuso e fornito in forma binaria. Il progetto Sound Open Firmware \u00e8 stato sviluppato da Intel per creare firmware aperti per i chip DSP correlati all'elaborazione audio (in seguito al progetto si \u00e8 unito anche Google). Attualmente, il progetto ha gi\u00e0 preparato firmware aperti per chip audio delle piattaforme Intel Baytrail, CherryTrail, Broadwell, ApolloLake, GeminiLake, CannonLake e IceLake;\n<li class=\"l\"> Nel driver DRM Intel (i915) \u00e8 stata aggiunta la supporto per i chip<br \/>\nElkhartlake (Gen11). Sono stati aggiunti identificatori PCI per i chip Comet Lake (Gen9). \u00c8 stata stabilizzata la supporto per i chip Icelake, per i quali sono stati aggiunti ulteriori identificatori PCI.<br \/>\n <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=d57b39e3ee3cdb4b00452090e386d197980cefc9\">Abilitato<\/a><\/noindex><br \/>\nmodalit\u00e0 di commutazione asincrona tra due buffer nella memoria video (async flip) durante le operazioni di scrittura tramite mmio, che ha notevolmente aumentato le prestazioni di alcune applicazioni 3D (ad esempio, le prestazioni nel test 3DMark Ice Storm sono aumentate del 300-400%). Aggiunta la supporto della tecnologia <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/HDCP\">HDCP2.2<\/a><\/noindex> (High-bandwidth Digital Content Protection) per la crittografia del segnale video trasmesso tramite HDMI;<\/p>\n<li class=\"l\"> Nel driver amdgpu per la GPU Vega20 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=457109829f4ee4107e8c7108237afba21fabbb5e\">\u00e8 stata aggiunta<\/a><\/noindex>  supporto RAS (Reliability, Availability, Serviceability) e supporto sperimentale per la sottosistema SMU 11, che sostituisce la tecnologia Powerplay. Per GPU Vega12 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=750cced1c08b5258202f29ed954513be8f38df1b\">\u00e8 stata aggiunta<\/a><\/noindex> supporto per la modalit\u00e0 BACO (Bus Active, Chip Off). Aggiunto il supporto iniziale per XGMI, bus ad alta velocit\u00e0 (PCIe 4.0) per collegare la GPU. Nel driver amdkfd sono stati aggiunti gli identificativi mancanti delle schede basate su GPU Polaris10;\n<li class=\"l\"> Nel driver Nouveau \u00e8 stato aggiunto il supporto per schede basate sul chipset NVIDIA Turing 117 (TU117, utilizzato in GeForce GTX 1650). In<br \/>\n kconfig <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=b30a43ac7132cdda833ac4b13dd1ebd35ace14b7\">\u00e8 stata aggiunta<\/a><\/noindex> impostazione per disattivare funzionalit\u00e0 obsolete che non vengono pi\u00f9 utilizzate nelle versioni attuali di libdrm;<\/p>\n<li class=\"l\"> Nell'API DRM e nel driver amdgpu \u00e8 stato aggiunto il supporto per oggetti di sincronizzazione \u00abtimeline\u00bb, che consentono di fare a meno dei classici lock.\n<li class=\"l\"> Dalla branch di staging \u00e8 stato trasferito nel nucleo il driver vboxvideo per GPU virtuale VirtualBox;\n<li class=\"l\"> Aggiunto il driver aspeed per il chip GFX SoC ASPEED;\n<li class=\"l\"> Aggiunto supporto per ARM SoC e schede Intel Agilex (SoCFPGA), NXP i.MX8MM, Allwinner (RerVision H3-DVK (H3), Oceanic 5205 5inMFD, Beelink GS2 (H6), Orange Pi 3 (H6)), Rockchip (Orange Pi RK3399, Nanopi NEO4, Chromebook Veyron-Mighty), Amlogic: SEI Robotics SEI510,<br \/>\nST Micro (stm32mp157a, stm32mp157c), NXP (<br \/>\n    Eckelmann ci4x10 (i.MX6DL),<\/p>\n<p>    i.MX8MM EVK (i.MX8MM),<\/p>\n<p>    ZII i.MX7 RPU2 (i.MX7),<\/p>\n<p>    ZII SPB4 (VF610),<\/p>\n<p>    Zii Ultra (i.MX8M),<\/p>\n<p>    TQ TQMa7S (i.MX7Solo),<\/p>\n<p>    TQ TQMa7D (i.MX7Dual),<\/p>\n<p>    Kobo Aura (i.MX50),<\/p>\n<p>    Menlosystems M53 (i.MX53)), NVIDIA Jetson Nano (Tegra T210).<\/p>\n<\/ul>\n<\/ul>\n<p>Allo stesso tempo, il Fondo Latinoamericano per il Software Libero <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">ha creato<\/a><\/noindex><br \/>\nuna versione <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">completamente libero kernel 5.2<\/a><\/noindex> &#8212; <noindex><a rel=\"nofollow\" href=\"http:\/\/linux-libre.fsfla.org\/pub\/linux-libre\/releases\/5.2-gnu\/\">Linux-libre 5.2-gnu<\/a><\/noindex>, ripulito da elementi di firmware e driver contenenti componenti non liberi o sezioni di codice il cui utilizzo \u00e8 limitato dal produttore. Nel nuovo rilascio \u00e8 inclusa la caricamento dei file<br \/>\nSound Open Firmware. Disabilitata la caricamento dei blob nei driver<br \/>\n mt7615, rtw88, rtw8822b, rtw8822c, btmtksdio, iqs5xx, ishtp e ucsi_ccg. Aggiornato il codice di pulizia dei blob nei driver e sottosistemi ixp4xx, imx-sdma, amdgpu, nouveau e goya, oltre alla documentazione del microcodice. Interrotta la pulizia dei blob nel driver r8822be a causa della sua rimozione.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51051\">opennet.ru<\/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.2. \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: \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b Ext4 \u0431\u0435\u0437 \u0443\u0447\u0451\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0440\u0430\u0437\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0434\u043b\u044f \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0421, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0434\u043b\u044f GPU Mali 4xx\/ 6xx\/7xx, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 sysctl \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0445 BPF, device-mapper \u043c\u043e\u0434\u0443\u043b\u044c dm-dust, \u0437\u0430\u0449\u0438\u0442\u0430 \u043e\u0442 \u0430\u0442\u0430\u043a MDS, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Sound Open Firmware \u0434\u043b\u044f DSP, [&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-35977","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.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.\" \/>\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\/it\/blog\/news\/reliz-yadra-linux-5-2\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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.2 | 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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-5-2\" \/>\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=\"2019-10-31T19:08:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:08:56+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\udd47Rilascio del kernel Linux 5.2 | ProHoster","description":"Dopo due mesi di sviluppo, Linus Torvalds ha presentato il rilascio del kernel Linux.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-5-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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.2 | 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.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-5-2","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":"2019-10-31T19:08:56+00:00","article:modified_time":"2019-10-31T19:08:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35977","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":"2026-01-22 01:30:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:52:26","updated":"2026-01-22 01:30:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/35977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=35977"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/35977\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=35977"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=35977"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=35977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}