Nuove caratteristiche e modifiche a UEK R7U1

Nuove funzionalità, miglioramenti e altre modifiche importanti introdotte in UEK R7U1.

Versione kernel

UEK R7U1 viene rilasciato inizialmente con la versione 5.15.0-100.96.32 del kernel.

Memoria ottimizzata per container

In questa release la struttura dati interna del kernel list_lru viene allocata in modo dinamico. L'implementazione statica precedente ha allocato la struttura dati alla memoria cgroups indipendentemente dal fatto che cgroups utilizzino o meno la struttura dati. Con questo aggiornamento, l'allocazione di list_lru a cgroups viene ritardata fino a quando non è necessario, il che garantisce che la memoria sia disponibile per le applicazioni utente, in particolare sui sistemi con molti container in esecuzione.

Estensioni Intel® Advanced Matrix per la virtualizzazione abilitate

Le estensioni Intel® Advanced Matrix (AMX) su processori scalabili Intel® Xeon® di 4a generazione sono abilitate nel kernel. AMX è un nuovo paradigma di programmazione progettato per accelerare i carichi di lavoro di intelligenza artificiale e machine learning fornendo un framework per lavorare facilmente con le matrici.

Questo aggiornamento include il codice kernel necessario per abilitare AMX negli ambienti virtualizzati in esecuzione in QEMU 6.1 con l'opzione -cpu host.

Aggiornamenti di Perfmon V2 per processori AMD 4th Gen EPYC™

I backport sono inclusi per le funzioni di monitoraggio delle prestazioni AMD versione 2 (Perfmon V2) sui processori AMD recenti e futuri. Perfmon V2 consente di impostare i registri per abilitare o disabilitare più contatori delle prestazioni contemporaneamente e rileva automaticamente il numero di contatori di Performance Monitor (PMC) di base anziché dipendere da impostazioni statiche per ogni famiglia di CPU. Gli aggiornamenti attuali includono anche l'aggiunta del filtro miss L3, che funziona taggando un'istruzione sul overflow del contatore IBS (Instruction Based Sampling) e generando un interrupt non mascherabile (NMI) se l'istruzione contrassegnata causa un errore L3. Questa funzione è utile per alimentare i dati a un daemon di migrazione delle pagine nei sistemi di memoria a più livelli.

Per ulteriori informazioni sull'uso di perf per monitorare le prestazioni del sistema, vedere la pagina del manuale perf(1).

Funzione server cortese NFSv4 abilitata

Questa release di aggiornamento introduce la funzione NFSv4 Courteous Server per contribuire a mitigare gli effetti del partizionamento di rete. NFSv4 è un protocollo con conservazione dello stato che gestisce i lease per i client che tengono traccia delle operazioni sul server. Le interruzioni di rete o le partizioni che causano il fallimento del rinnovo della release di un client possono causare complessi processi di recupero che possono non riuscire. Anche in scenari in cui i processi di recupero non falliscono, il processo di recupero dello stato può richiedere tempo per completare l'impatto sulle prestazioni e aumentare il carico.

NFSv4 Courteous Server non espande immediatamente lo stato del client alla scadenza del leasing e continua a riconoscere i token di stato generati in precedenza come validi fino a quando non si verifica un conflitto tra lo stato scaduto e le richieste di un altro client o fino al riavvio del server. Questa funzione può evitare di eseguire il recupero laddove potrebbe non essere necessario.

Un client impostato sullo stato courtesy presenta le seguenti caratteristiche:

  • Il client è scaduto ma ha ancora stati sul server.

  • Il client non è proprietario di blocchi in stato di cameriere (conflitto).

  • Il client non ha conflitti per le deleghe concesse.

L'intero leasing client viene eliminato per un client in stato courtesy alle seguenti condizioni:

  • Il client è in conflitto con altre richieste client.

  • È stato raggiunto il numero massimo di client NFS consentiti nel sistema, in base alla configurazione della memoria di sistema.

  • La memoria di sistema disponibile scende a un livello che attiva il processo di riduzione della memoria.

L'interfaccia /proc/fs/nfsd/clients viene aggiornata per indicare se un client è in stato courtesy. Ad esempio:

cat /proc/fs/nfsd/clients/2/info
clientid: 0xf0d156a662a0deec
address: "192.0.2.95:1003"
status: courtesy
seconds from last renew: 198
name: "Linux NFSv4.1 nfs.example.com"
minor version: 1
Implementation domain: "kernel.org"
Implementation name: "Linux 5.18.0-rc6+ #1 SMP PREEMPT_DYNAMIC Fri May 27 22:29:45 GMT 2022 x86_64"
Implementation time: [0, 0]
callback state: UP
callback address: 192.0.2.95:0

È inoltre possibile utilizzare questa interfaccia per distruggere manualmente un client di cortesia. Ad esempio:

echo "expire" | sudo tee -a /proc/fs/nfsd/clients/2/ctl

Aggiornamenti driver

UEK R7 supporta molti dispositivi hardware. In stretta collaborazione con i fornitori di hardware e storage, Oracle ha aggiornato diversi driver dispositivo dalle versioni di mainline Linux 5.15.0.

Le seguenti nuove funzionalità sono note nei driver che vengono spediti con UEK R7U1:

  • Driver di rete Broadcom BCM573xx

    Il driver di rete Broadcom BCM573xx, bnxt_en, viene aggiornato per includere molte patch a monte e fornite dal fornitore.

  • Driver HBA Broadcom Emulex Fibre Channel

    Il driver Broadcom Emulex LightPulse Fibre Channel SCSI, lpfc, viene aggiornato alla versione 14.2.0.5 con patch e correzioni di bug fornite dal fornitore.

  • Driver per adattatori di rete Microsoft Azure

    Il driver Microsoft Azure Network Adapter, mana, è incluso in questa release. Le patch a monte e fornite dal fornitore sono incluse e il driver è destinato all'uso su Oracle Linux 8 e Oracle Linux 9. Notevoli aggiornamenti delle funzionalità includono l'aggiunta di un gestore per i reindirizzamenti XDP (Data Path) eXpress.

  • Driver del dispositivo MPI3 Storage Controller

    Il driver del dispositivo MPI3 Storage Controller, mpi3mr, è incluso in questa release alla versione 8.2.0.3.0. Sono incluse le patch a monte e fornite dal fornitore.

  • Modulo Core QLogic FastLinQ 4xxxx

    Il modulo Core QLogic FastLinQ 4xxxx, qed, viene aggiornato per includere le patch fornite dal fornitore per aggiornare questo driver in linea con le modifiche a monte.

  • Modulo iSCSI QLogic FastLinQ 4xxxx

    Il modulo iSCSI QLogic FastLinQ 4xxxx, qedi, viene aggiornato per includere le patch fornite dal fornitore per aggiornare questo driver in linea con le modifiche a monte. In particolare, queste correzioni di trasporto ISCSI includono correzioni di recupero della connessione iscsid e correzioni di blocco dell'handler di arresto qedi.

  • Driver HBA Marvell QLogic Fibre Channel

    Il driver HBA Marvell QLogic Fibre Channel, qla2xxx, viene aggiornato alla versione 10.02.08.100-k e include un gran numero di patch e aggiornamenti forniti dal fornitore.

  • Driver Intel® Ethernet Connection E800 Series Linux

    Il driver Linux Intel® Ethernet Connection E800 Series viene aggiornato per includere le patch fornite dal fornitore e le correzioni dei bug.

Limitazioni CA sul portachiavi del computer rimosse

Il portachiavi del kernel .machine è stato introdotto in UEK R7 e descritto in dettaglio in UEK R7 (5.15.0). Tuttavia, le restrizioni dell'autorità di certificazione (CA) implementate non accettavano i certificati MOK (Machine Owned Key) senza che il bit CA fosse impostato per essere caricato nel portachiavi .machine.

Con la rimozione delle restrizioni, tutti i certificati MOK possono ora essere caricati.

Per ulteriori informazioni sul boot sicuro, vedere Oracle Linux: Working with UEFI Secure Boot.

Log dei dettagli NVMe

In questa release, il log descrittivo per NVMe è abilitato per impostazione predefinita per migliorare il log. Questa implementazione facilita la risoluzione dei problemi aiutando gli amministratori ad analizzare meglio perché il controller potrebbe non riuscire a eseguire i comandi correlati a NVMe.

Avvio sicuro abilitato su tutti i sistemi conformi a UEFI

A partire da questa release di aggiornamento, Secure Boot è implementato e le immagini del kernel sono ora firmate su tutti i sistemi x86_64 e Arm conformi a UEFI.