{"id":120593,"date":"2024-11-18T13:09:07","date_gmt":"2024-11-18T11:09:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima"},"modified":"2024-11-18T13:09:07","modified_gmt":"2024-11-18T11:09:07","slug":"reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","title":{"rendered":"Rilascio del kernel Linux 6.12 con supporto per la modalit\u00e0 Realtime","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dopo due mesi di sviluppo, Linus Torvalds ha presentato il rilascio del kernel Linux 6.12. Tra le modifiche pi\u00f9 importanti: la possibilit\u00e0 di attivare la modalit\u00e0 Realtime, sched_ext per la creazione di pianificatori CPU tramite eBPF, visualizzazione di un codice QR in caso di stati di emergenza, meccanismo Device Memory TCP, meccanismo di prenotazione delle risorse SCHED_DEADLINE server, miglioramento del pianificatore dei compiti EEVDF, modulo IPE per l'impostazione delle politiche di integrit\u00e0.        <\/p>\n<p>Nella nuova versione sono stati adottati 14607 correttivi da 2167 sviluppatori, la dimensione della patch \u00e8 di 37 MB (le modifiche hanno interessato 13087 file, aggiunte 507913 righe di codice, rimosse 234083 righe). Nella versione precedente c'erano 15130 correttivi da 2078 sviluppatori, la dimensione della patch era di 85 MB (nel kernel 6.10 la patch era di 41 MB). Circa il 45% di tutte le modifiche presentate in 6.12 riguardano i driver di dispositivo, circa il 12% delle modifiche sono relative all'aggiornamento del codice specifico per architetture hardware, il 13% \u00e8 collegato allo stack di rete, il 6% ai filesystem e il 3% ai sottosistemi interni del kernel.      <\/p>\n<p>Le principali novit\u00e0 del kernel 6.12:  <\/p>\n<ul>\n<li class=\"l\"> <b>Memoria e servizi di sistema<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stata fornita la possibilit\u00e0 di comporre il kernel con l'opzione PREEMPT_RT senza patch aggiuntive per funzionare in modalit\u00e0 tempo reale. L'ultima funzione mancante nel kernel, che impediva di attivare la modalit\u00e0 PREEMPT_RT, era il supporto per l'output atomico non bloccante tramite la funzione printk, che \u00e8 stata inclusa nel kernel. Il supporto per PREEMPT_RT \u00e8 disponibile per le architetture x86, x86_64, ARM64 e RISC-V. Fino ad ora, l'implementazione della modalit\u00e0 PREEMPT_RT veniva fornita sotto forma di patch esterne, sulla base delle quali alcune distribuzioni, come RHEL, SUSE e Ubuntu, creavano edizioni Realtime separate dei loro prodotti, molto richieste in settori come i sistemi finanziari, i dispositivi di elaborazione audio e video, l'aviazione, la medicina, la robotica, le telecomunicazioni e i sistemi industriali, dove \u00e8 necessario garantire un tempo di elaborazione degli eventi prevedibile.\n<li class=\"l\"> \u00c8 stato aggiunto il meccanismo \u00absched_ext\u00bb (SCX), che consente di utilizzare eBPF per creare scheduler CPU, coprendo praticamente tutti gli aspetti della pianificazione dell'esecuzione dei task e della distribuzione delle risorse CPU. Tali scheduler possono essere caricati dinamicamente ed eseguiti all'interno del kernel Linux. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/vps\/abuzoustojchivye-vps\/\"   title=\"macchina virtuale\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4348\">macchina virtuale<\/a> eBPF. Il meccanismo sched_ext semplifica la creazione di pianificatori specifici per compiti, consentendo di sperimentare diverse tecniche e strategie di pianificazione, oltre a permettere la rapida creazione di prototipi funzionanti e la sostituzione dei pianificatori al volo nelle infrastrutture operative. Ad esempio, con sched_ext \u00e8 possibile sviluppare un pianificatore che tenga conto delle specificit\u00e0 di un'applicazione e modifichi dinamicamente la strategia di pianificazione in base allo stato del sistema e a ulteriori fattori.\n<li class=\"l\"> La composizione include il resto delle patch necessarie per il funzionamento del meccanismo SCHED_DEADLINE server, risolvendo il problema della carenza di risorse CPU per i compiti normali, a causa della monopolizzazione della CPU da parte dei compiti ad alta priorit\u00e0 (realtime). Per prevenire la monopolizzazione della CPU, in passato nel kernel veniva utilizzato il meccanismo di Realtime throttling, che cercava di riservare il 5% per i compiti a bassa priorit\u00e0, lasciando il 95% del tempo per i compiti realtime. Questo meccanismo aveva molte lacune, poich\u00e9 i compiti normali in molte situazioni non ricevevano il tempo di CPU necessario. Il server SCHED_DEADLINE implementa un meccanismo di riservazione delle risorse pi\u00f9 efficace.\n<li class=\"l\"> \u00c8 stata completata l'integrazione dello scheduler EEVDF (Earliest Eligible Virtual Deadline First), che sostituisce il CFS (Completely Fair Scheduler), fornito a partire dal kernel 2.6.23. Il nuovo scheduler, nel selezionare il prossimo processo da eseguire, tiene conto dei processi che non hanno ricevuto adeguate risorse di CPU o ne hanno ottenute troppa. Nel primo caso, il controllo viene forzato a passare al processo, mentre nel secondo viene invece ritardato. Il vecchio scheduler CFS si basava su euristiche e configurazioni fine per identificare i processi che necessitavano di attenzione particolare, mentre il nuovo scheduler li monitora in modo pi\u00f9 esplicito e non richiede una configurazione fine. Si prevede che l'EEVDF permetter\u00e0 di ridurre le latenze nell'esecuzione di compiti per i quali il CFS aveva problemi di scheduling.\n<li class=\"l\"> Nel gestore di emergenze del kernel \u00e8 stato aggiunto DRM Panic, che utilizza il sottosistema DRM (Direct Rendering Manager) per visualizzare un report visivo in stile \u00abschermata blu della morte\u00bb, con la possibilit\u00e0 di mostrare sullo schermo un logo e un codice QR con il report kmsg in caso di stato di emergenza. Poich\u00e9 nel codice QR possono essere contenuti solo 2953 byte, \u00e8 prevista l'opzione DRM_PANIC_SCREEN_QR_CODE_URL, attraverso la quale il report kmsg viene compresso tramite zlib e allegato come parametro all'URL, consentendo di trasmettere circa 7500 byte tramite un QR code V40. Durante la costruzione dei pacchetti del kernel, le distribuzioni possono impostare un link di base per l'URL, permettendo di organizzare un collegamento a una pagina per inviare una segnalazione di problema. \u00c8 prevista una configurazione per la scelta del formato del codice QR tramite impostazione DRM_PANIC_SCREEN_QR_VERSION.\n<li class=\"l\"> \u00c8 stato aggiunto il supporto per l'estensione ARM POE (Permission Overlay Extension), che consente di definire i diritti di accesso alle aree di memoria. Con questa estensione, sui sistemi con processori ARM64 pu\u00f2 essere implementato un meccanismo chiamato Memory Protection Keys, utilizzato per limitare l'accesso alle pagine di memoria senza modificare la tabella delle pagine di memoria.\n<li class=\"l\"> Per le architetture Loongarch, ARM64, PowerPC e s390 \u00e8 stata trasferita l'implementazione della syscall getrandom(), ottimizzata tramite il meccanismo vDSO (virtual dynamic shared object), che consente di spostare il gestore della syscall dallo kernel allo spazio utente, evitando i cambi di contesto. Questa ottimizzazione permette di accelerare fino a 15 volte l'ottenimento di numeri casuali.\n<li class=\"l\"> Nel sottosistema di input\/output asincrono io_uring \u00e8 stata aggiunta la possibilit\u00e0 di utilizzare timeout assoluti, che si attivano al raggiungimento di un determinato momento sugli orologi di sistema (in precedenza era possibile impostare solo timeout relativi, in cui veniva indicata la durata dall'inizio dell'operazione).\n<li class=\"l\"> Sono stati aggiunti file per la generazione di binding per la libreria libcpupower utilizzando l'utility SWIG, che consente di creare binding da codice C\/C++ per vari linguaggi di programmazione. I binding permettono di scrivere script in Python e in altri linguaggi, e di usarli per estendere la funzionalit\u00e0 della libreria libcpupower, che fornisce un'API per la gestione di cpufreq e driver dallo spazio utente.\n<li class=\"l\"> Nell'utility cpuidle \u00e8 stata implementata la visualizzazione del valore dello stato di inattivit\u00e0 \u00abresidency\u00bb, utilizzato per sistemi in tempo reale e che tiene conto del tempo minimo che la CPU deve rimanere in stato di inattivit\u00e0 per giustificare il consumo di energia per passare a tale stato e uscirne.\n<li class=\"l\"> \u00c8 stata aggiunta la possibilit\u00e0 di utilizzare il compilatore Clang per la compilazione della libreria standard C nolibc, inclusa nei sorgenti del kernel Linux, che fornisce un'interfaccia per le chiamate di sistema di base. Durante la compilazione di nolibc con Clang \u00e8 consentito l'uso dell'ottimizzazione durante la fase di linkaggio (LTO).\n<li class=\"l\"> Sono stati dichiarati obsoleti alcuni interfacce cgroup1, come il monitoraggio TCP, la prima versione dei limiti morbidi (soft limit) e la gestione dell'esaurimento della memoria libera. Il supporto per queste funzionalit\u00e0 rimane attivo, mentre l'avviso \u00e8 stato emesso per analizzare il numero di utenti che continuano a utilizzare queste capacit\u00e0.\n<li class=\"l\"> \u00c8 stata aggiunta la possibilit\u00e0 di configurare un buffer circolare di tracciamento per mantenere i dati accumulati dopo il riavvio, cos\u00ec da non perdere le informazioni di debug accumulate in caso di arresto anomalo del kernel. I dati vengono memorizzati nella memoria. L'attivazione avviene tramite il parametro della riga di comando del kernel trace_instance, ad esempio impostare \u00abtrace_instance=boot_map@0x285400000:12M\u00bb riserver\u00e0 12 MB di memoria all'indirizzo 0x285400000 per il buffer \u00abboot_map\u00bb, che sar\u00e0 accessibile tramite il file \/sys\/kernel\/tracing\/instances\/boot_map.\n<li class=\"l\"> \u00c8 continuata la traslazione delle modifiche dal ramo Rust-for-Linux, relative all'uso del linguaggio Rust come secondo linguaggio per lo sviluppo di driver e moduli del kernel (il supporto per Rust non \u00e8 attivo di default e non comporta l'inclusione di Rust come dipendenza obbligatoria per le compilazioni del kernel). Sono stati aggiunti i moduli \u2018list\u2019 e \u2018rbtree\u2019 per lavorare con liste concatenate bidirezionali e alberi di ricerca rosso-neri (red-black tree). Sono state ampliate le funzionalit\u00e0 dei moduli \u2018init\u2019, \u2018sync\u2019, \u2018types\u2019 e \u2018error\u2019. \u00c8 stata fornita la possibilit\u00e0 di utilizzare codice Rust nella compilazione del kernel con protezione contro gli attacchi Spectre (opzioni MITIGATION_{RETHUNK,RETPOLINE,SLS}), usando il sistema di debug KASAN, i meccanismi di protezione kCFI (kernel Control Flow Integrity) e Shadow Call, e durante l'uso di plugin GCC aggiuntivi. \u00c8 stato aggiunto un driver per il controller Ethernet Applied Micro QT2025 PHY, scritto in Rust. \u00c8 stato preparato un sito separato con la documentazione \u2014 rust.docs.kernel.org.\n<li class=\"l\"> Nel codice sorgente del kernel \u00e8 stata aggiunta l'utilit\u00e0 xdrgen per trasformare le specifiche XDR (eXternal Data Representation) in funzioni di codifica e decodifica XDR, scritte utilizzando lo stile C adottato nel kernel Linux.\n<li class=\"l\"> \u00c8 stata accettata nel kernel una modifica che implementa un meccanismo di mascheramento dei puntatori per ridurre il numero di chiamate lente barrier_nospec() nella funzione 64-bit copy_from_user(), utilizzata per copiare dati nel kernel dallo spazio utente. L'uso del mascheramento accelera del 2.6% il test \u00abper_thread_ops\u00bb, che valuta il numero di operazioni che possono essere eseguite in un singolo thread.\n<li class=\"l\"> \u00c8 stato aggiunto un nuovo driver USB che consente di utilizzare il protocollo 9pfs come trasporto per la trasmissione e ricezione di dati da un dispositivo USB, montando il FS 9p su USB (ad esempio, \u00abmount -t 9p -o trans=usbg,aname=\/path\/to\/fs  \/mnt\/9\u00bb). Un esempio di applicazione di questo nuovo driver \u00e8 l'utilizzo al posto di NFS per organizzare il caricamento della partizione root nello sviluppo di dispositivi embedded.                    <\/ul>\n<li class=\"l\"> <b>Sottosistema disco, I\/O e file system<\/b>\n<ul>\n<li class=\"l\"> Nel sottosistema VFS \u00e8 stata aggiunta la possibilit\u00e0 di lavorare con dispositivi di archiviazione la cui dimensione dei blocchi \u00e8 maggiore della dimensione della pagina di memoria del sistema. Nelle file system, questa funzionalit\u00e0 \u00e8 attualmente supportata solo in XFS.\n<li class=\"l\"> Nel sottosistema FUSE, che consente di creare implementazioni di file system che operano nello spazio utente, \u00e8 stato aggiunto il supporto per il mapping degli identificatori utente dei file system montati, utilizzato per associare file di un determinato utente su una partizione remota con un altro utente nel sistema attuale.\n<li class=\"l\"> \u00c8 stata implementata una nuova operazione fcntl F_CREATED_QUERY, che consente all'applicazione di determinare se un file aperto utilizzando il flag O_CREAT \u00e8 stato appena creato o esisteva gi\u00e0.\n<li class=\"l\"> Alla chiamata di sistema name_to_handle_at() \u00e8 stata aggiunta la possibilit\u00e0 di utilizzare identificatori unici a 64 bit per le point di mount, per evitare condizioni di corsa durante l'analisi di \/proc\/mountinfo.\n<li class=\"l\"> La dimensione della struttura \u00abfile\u00bb nel kernel \u00e8 stata ridotta da 232 a 184 byte, consentendo di ridurre il consumo di memoria sui sistemi che lavorano attivamente con i file.\n<li class=\"l\"> \u00c8 vietato montare file system su punti di montaggio all'interno della gerarchia \/proc, ad esempio, in \/proc\/PID\/fd, in quanto potrebbe creare potenziali problemi di sicurezza.\n<li class=\"l\"> Nel pseudo-FS NSFS (NameSpace FS), utilizzato per lavorare con gli spazi dei nomi, \u00e8 stata implementata la fornitura di informazioni aggiuntive sugli spazi dei nomi dei punti di montaggio.\n<li class=\"l\"> Nel file system EROFS (Extendable Read-Only File System), progettato per l'uso su partizioni disponibili in modalit\u00e0 di sola lettura, \u00e8 stata aggiunta la supporto per il montaggio dei file system direttamente da immagini disco salvate come file.\n<li class=\"l\"> In XFS sono stati aggiunti i nuovi comandi ioctl XFS_IOC_START_COMMIT e XFS_IOC_COMMIT_RANGE per lo scambio di contenuti tra due file.\n<li class=\"l\"> In NFS \u00e8 stato aggiunto il supporto del protocollo \u00abLOCALIO\u00bb, che consente di determinare se il client e <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/server\/\"   title=\"un server\" data-wpil-keyword-link=\"linked\">un server<\/a> NFS si trovano sulla stessa host, attivando le relative ottimizzazioni.\n<li class=\"l\"> Nel file system Btrfs sono state proposte ottimizzazioni delle prestazioni, \u00e8 stata effettuata una refactoring del codice, ridotto l'ambito di blocco degli estremi durante le operazioni di lettura, \u00e8 proseguito il lavoro per la transizione all'utilizzo di volumi di pagine di memoria (page folios) e implementato il rilascio automatico della memoria per la struttura btrfs_path.\n<li class=\"l\"> Nel filesystem Ext4 sono stati corretti errori relativi all'allocazione dei blocchi, alla gestione degli extent, al meccanismo \u00abfast commit\u00bb e alla registrazione.                  <\/ul>\n<li class=\"l\"> <b>Virtualizzazione e sicurezza<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stato aggiunto il modulo LSM IPE (Integrity Policy Enforcement), sviluppato da Microsoft per estendere il sistema esistente di controllo degli accessi mandatory. Questo modulo consente di definire una politica di integrit\u00e0 generale per l'intero sistema, specificando quali operazioni sono ammissibili e come verificare l'autenticit\u00e0 dei componenti. Ad esempio, con IPE \u00e8 possibile specificare quali file eseguibili possono essere avviati tenendo conto della verifica della loro corrispondenza con la versione di riferimento tramite hash crittografici forniti dal sistema dm-verity.\n<li class=\"l\"> Durante la fase di compilazione del kernel, \u00e8 stata fornita la possibilit\u00e0 di abilitare separatamente i metodi di protezione disponibili contro le diverse vulnerabilit\u00e0 della classe Spectre nel CPU. In Kconfig sono state proposte nuove opzioni: MITIGATE_MDS (protezione contro la vulnerabilit\u00e0 Microarchitectural Data Sampling), MITIGATE_TAA (protezione contro la vulnerabilit\u00e0 TSX Asynchronous Abort), MITIGATE_MMIO_STALE_DATA (protezione contro la vulnerabilit\u00e0 MMIO Stale Data), MITIGATE_L1TF (protezione contro la vulnerabilit\u00e0 L1 Terminal Fault), MITIGATE_RETBLEED (protezione contro la vulnerabilit\u00e0 Retbleed), MITIGATE_SPECTRE_V1, MITIGATE_SPECTRE_V2 (protezione contro le vulnerabilit\u00e0 Spectre), MITIGATE_SRBDS (protezione contro la vulnerabilit\u00e0 Special Register Buffer Data Sampling), MITIGATE_SSB (protezione contro la vulnerabilit\u00e0 Speculative Store Bypass).\n<li class=\"l\"> \u00c8 stato aggiunto il parametro della riga di comando proc_mem.force_override e un insieme di impostazioni di compilazione in Kconfig (PROC_MEM_FORCE_ALWAYS, PROC_MEM_FORCE_PTRACE e PROC_MEM_FORCE_NEVER) che consentono di vietare la modifica della memoria attraverso \/proc\/pid\/mem.\n<li class=\"l\"> Il sottosistema LSM (Linux security module) \u00e8 stato convertito per utilizzare chiamate statiche, migliorando cos\u00ec la sicurezza e aumentando le prestazioni.\n<li class=\"l\"> \u00c8 stata fornita la possibilit\u00e0 di utilizzare i nuclei standard per l'architettura ARM64 in ambienti ospiti eseguiti su sistemi Android con hypervisor KVM modificato (protected KVM).\n<li class=\"l\"> Nel modulo LSM Landlock, che consente di limitare l'interazione di un gruppo di processi con l'ambiente esterno, \u00e8 stata implementata la concettualizzazione di \"IPC scoping\" per limitare selettivamente l'interazione con gli ambienti sandbox, utilizzando socket Unix e segnali. Ad esempio, \u00e8 possibile vietare la creazione di connessioni utilizzando socket Unix dall'ambiente sandbox ai processi nei quali non viene applicata l'isolamento, ma consentire connessioni ai processi nella stessa area di scope.\n<li class=\"l\"> Nel hypervisor KVM \u00e8 stato aggiunto un flag nella CPUID per i sistemi guest, che segnala il supporto per le estensioni AVX10.1.            <\/ul>\n<li class=\"l\"> <b>Sottosistema di rete<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stato aggiunto un meccanismo Device Memory TCP, che consente l'utilizzo di socket di rete per l'invio diretto dei contenuti della memoria dei dispositivi periferici su rete (modalit\u00e0 zero-copy) e il posizionamento diretto dei contenuti dei pacchetti di rete nell'area di memoria del dispositivo sul lato del ricevente. I dati trasferiti nei pacchetti vengono inviati dalla scheda di rete alla memoria del dispositivo periferico o dalla memoria del dispositivo alla scheda di rete direttamente, bypassando la CPU, mentre le intestazioni dei pacchetti vengono memorizzate nei normali buffer del kernel.\n<li class=\"l\"> Ampiate le funzionalit\u00e0 di molti driver Ethernet e wireless. Ad esempio, nel driver Intel iwlwifi \u00e8 stata aggiunta la supporto per il trasferimento delle operazioni RLC\/SMPS al firmware; nel driver RealTek rtw89 sono state migliorate le prestazioni e aggiunto il supporto per i chip RTL8852BT\/8852BE-VT (WiFi 6). Nel driver Ethernet microchip \u00e8 stato introdotto il supporto per le specifiche IEEE 802.3bw (100BASE-T1) e IEEE 802.3bp, e migliorate le implementazioni delle Ethernet virtuali Microsoft vNIC e IBM veth. Sono stati aggiunti nuovi driver per i chip Ethernet Realtek RTL9054, RTL9068, RTL9072, RTL9075, RTL9068, RTL9071 e Microchip LAN8650\/1 10BASE-T1S MAC-PHY.\n<li class=\"l\"> In MPTCP (MultiPath TCP), un'estensione del protocollo TCP per la consegna simultanea di pacchetti TCP tramite pi\u00f9 percorsi attraverso diverse interfacce di rete, \u00e8 stato aumentato il numero di bit utilizzati per la pesatura della routing da 8 a 16 bit. \u00c8 stata implementata la definizione del traffico che perde (blackhole) e la sospensione temporanea delle richieste di connessione con sistemi che portano alla perdita del traffico.\n<li class=\"l\"> Per IPv6 \u00e8 stata implementata la supporto al flag \"p\" in PIO (Prefix Information Option), utilizzato negli annunci RA (IPv6 Router Advertisements) per scegliere il modello di distribuzione dei client tramite DHCPv6-PD (DHCPv6 Prefix Delegation, RFC9663) anzich\u00e9 l'assegnazione di indirizzi distinti basati su prefissi, utilizzando SLAAC (Stateless Address Autoconfiguration). In IPv6 IOAM6 \u00e8 stato aggiunto il supporto per una nuova modalit\u00e0 di incapsulamento tunsrc, che consente di ottenere prestazioni pi\u00f9 elevate.\n<li class=\"l\"> Aumentata la prestazione nel trattamento dei pacchetti di controllo IPsec.\n<li class=\"l\"> Migliorata la prestazione del flush di grandi insiemi di regole nftables. \u00c8 migliorato il supporto per il protocollo SCTP in nfnetlink_queue.\n<li class=\"l\"> Nell'API ethtool \u00e8 stato aggiunto il supporto per il binding di pi\u00f9 schede di rete a un unico'interfaccia di rete.                      <\/ul>\n<li class=\"l\"> <b>Attrezzature<\/b>\n<ul>\n<li class=\"l\"> Nel driver AMDGPU \u00e8 continuato il lavoro per implementare il supporto per la GPU AMD RDNA4 (\"GFX12\"). \u00c8 stata aggiunta la possibilit\u00e0 di azzerare singole code di attivit\u00e0 senza azzerare lo stato dell'intera GPU.\n<li class=\"l\"> \u00c8 proseguito il lavoro sul driver drm (Direct Rendering Manager) Xe per GPU basate sull'architettura Intel Xe, utilizzate nelle schede grafiche Intel della famiglia Arc e nella grafica integrata, a partire dai processori Tiger Lake. La nuova versione include il supporto per GPU basate sulle microarchitetture Battlemage e Lunar Lake. \u00c8 stato presentato il supporto per i modificatori CCS (Color Control Surface) Xe2 per la gestione delle configurazioni delle GPU integrate e dedicate.\n<li class=\"l\"> Nel driver i915 \u00e8 stata implementata la possibilit\u00e0 di fornire tramite l'interfaccia HWMON o sysfs (attributo \"fan1_input\") informazioni sulla velocit\u00e0 di rotazione della ventola. Il parametro \"i915.modeset\" \u00e8 stato dichiarato obsoleto, e al posto di \"i915.modeset=0\" si dovrebbe utilizzare il parametro \"i915.nomodeset\".\n<li class=\"l\"> Nel driver DRM msm (GPU Qualcomm Adreno) \u00e8 stato aggiunto il supporto per le GPU A615, A306 e A621.\n<li class=\"l\"> Nel driver Nouveau \u00e8 stata effettuata una revisione e pulizia delle strutture interne.\n<li class=\"l\"> Nel driver intel_pstate, che gestisce i parametri di consumo energetico (P-state) su sistemi con processori Intel, \u00e8 stata aggiunta la supporto per sistemi ibridi con CPU asimmetriche (caratteristiche diverse), oltre al supporto per la gestione dell'energia dei processori basati sulle microarchitetture Granite Rapids e Sierra Forest. Nel driver intel_idle \u00e8 stata aggiunta la supporto per la CPU Xeon Granite Rapids. Nel driver intel_rapl \u00e8 stato garantito il riconoscimento dei processi AMD della famiglia 1Ah e dei processori Intel ArrowLake-U.\n<li class=\"l\"> Continuano le modifiche per supportare l'ARM SoC Snapdragon X Elite, che utilizza la CPU Qualcomm Oryon a 12 core e la GPU Qualcomm Adreno. Il chip \u00e8 destinato all'uso in laptop e PC, superando in molti test di performance i chip Apple M3 e Intel Core Ultra 155H.\n<li class=\"l\"> Aggiunta la supporto per piattaforme ARM, SoC e dispositivi: Broadcom bcm2712 (Raspberry Pi 5), Renesas R9A09G057 (RZ\/V2H), Qualcomm Snapdragon 414 (MSM8929), Lenovo ThinkPad T14s Gen 6, Lenovo A6000\/A6010, Surface Laptop 7, Anbernic RG35XXSP, Firefly Core-PX30-JD4, Lunzn Fastrhino R68S, Aspeed Riser, AGX Orin, Rockchip Qnap-TS433, Huashan Pi, Meta Catalina, BeagleY-AI, NanoPi R2S Plus, ExynosAuto v920, SOPHGO SG2002, Qualcomm IPQ5332, LG G4 (h815), Cool Pi CM5 GenBook, Anbernic RG35XXSP, GameForce Ace, IBM P11, Kontron i.MX93 OSM-S, NanoPC-T6.\n<li class=\"l\"> Aggiunta supporto per i pannelli Anbernic RG28XX, On Tat Industrial Company KD50G21-40NT-A1, Innolux G070ACE-LH3, Melfas lmfbx101117480, Densitron DMT028VGHMCMI-1D, Microchip AC40T08A, AOU B116XTN02.3, AUO B116XAN06.1, AOU B116XAT04.1, BOE TV101WUM-LL2, BOE NV140WUM-N41, BOE NV133WUM-N63, BOE NV116WHM-A4D, BOE NE140WUM-N6G, CMN N116BCA-EA2, CMN N116BCP-EA2, CSW MNB601LS1-4, Starry er88577.\n<li class=\"l\"> Nella sottosistema audio aggiunto supporto per chip e codec RME Digiface USB, AMD ACP 7.1, Mediatek MT6367, MT8365, Realtek RTL1320, C-Media CM9825. I vecchi driver audio per ASoC Intel sono stati dichiarati obsoleti, e si consiglia di utilizzare i driver AVS. Molti miglioramenti sono stati apportati al driver SoundWire.      <\/ul>\n<\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62243\">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 6.12. \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: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Realtime-\u0440\u0435\u0436\u0438\u043c\u0430, sched_ext \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 CPU \u0447\u0435\u0440\u0435\u0437 eBPF, \u0432\u044b\u0432\u043e\u0434 QR-\u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0445, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c Device Memory TCP, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 SCHED_DEADLINE server, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0434\u0430\u0447 EEVDF, \u043c\u043e\u0434\u0443\u043b\u044c IPE \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 14607 [&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-120593","post","type-post","status-publish","format-standard","hentry","category-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - 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 6.12. \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: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Realtime-\u0440\u0435\u0436\u0438\u043c\u0430, sched_ext \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 CPU \u0447\u0435\u0440\u0435\u0437 eBPF, \u0432\u044b\u0432\u043e\u0434 QR-\u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0445, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c Device Memory TCP, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 SCHED_DEADLINE server, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0434\u0430\u0447 EEVDF, \u043c\u043e\u0434\u0443\u043b\u044c IPE \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 14607\" \/>\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\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\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 6.12 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 Realtime-\u0440\u0435\u0436\u0438\u043c\u0430 | 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 6.12. \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: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Realtime-\u0440\u0435\u0436\u0438\u043c\u0430, sched_ext \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 CPU \u0447\u0435\u0440\u0435\u0437 eBPF, \u0432\u044b\u0432\u043e\u0434 QR-\u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0445, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c Device Memory TCP, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 SCHED_DEADLINE server, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0434\u0430\u0447 EEVDF, \u043c\u043e\u0434\u0443\u043b\u044c IPE \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 14607\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima\" \/>\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=\"2024-11-18T11:09:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-11-18T11:09:07+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 6.12 con supporto per la modalit\u00e0 Realtime | ProHoster","description":"Dopo due mesi di sviluppo Linus Torvalds ha presentato il rilascio del kernel Linux 6.12. Tra le modifiche pi\u00f9 significative: possibilit\u00e0 di abilitare la modalit\u00e0 Realtime, sched_ext per creare scheduler CPU tramite eBPF, generazione di un codice QR in situazioni di emergenza, meccanismo Device Memory TCP, meccanismo di riservazione delle risorse SCHED_DEADLINE server, miglioramento dello scheduler EEVDF, modulo IPE per la definizione delle politiche di integrit\u00e0. Nella nuova versione sono stati accettati 14607.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","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 6.12 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 Realtime-\u0440\u0435\u0436\u0438\u043c\u0430 | 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 6.12. \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: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f Realtime-\u0440\u0435\u0436\u0438\u043c\u0430, sched_ext \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 CPU \u0447\u0435\u0440\u0435\u0437 eBPF, \u0432\u044b\u0432\u043e\u0434 QR-\u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u0445, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c Device Memory TCP, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 SCHED_DEADLINE server, \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0434\u0430\u0447 EEVDF, \u043c\u043e\u0434\u0443\u043b\u044c IPE \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 14607","og:url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/reliz-yadra-linux-6-12-s-podderzhkoj-realtime-rezhima","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":"2024-11-18T11:09:07+00:00","article:modified_time":"2024-11-18T11:09:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"120593","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":"default","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-23 08:06:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 08:06:19","updated":"2026-01-23 08:06:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/120593","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=120593"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/120593\/revisions"}],"predecessor-version":[{"id":173076,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/120593\/revisions\/173076"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=120593"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=120593"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=120593"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}