Capitolo 3. Kernel

Il kernel presente con Red Hat Enterprise Linux 6.2 presenta diverse correzioni e miglioramenti. Per una documentazione dettagliata su tutte le correzioni e miglioramenti aggiunti al kernel per questa release consultate la sezione relativa al kernel delle Note tecniche di Red Hat Enterprise Linux 6.2
Come utilizzare open-iscsi per gestire il processo di registrazione e scoperta qla4xxx

Il comportamento predefinito del driver qla4xxx è quello di lasciare al firmware dell'adattatore il compito di gestire il processo di scoperta e registrazione nei target iSCSI. Una nuova funzione di Red Hat Enterprise Linux 6.2 permette l'uso di open-iscsi per la gestione del processo di registrazione e scoperta di qla4xxx. Ciò potrebbe dar luogo ad un processo di gestione più uniforme.

Questa funzione viene abilitata per impostazione predefinita. Le impostazioni del firmware iSCSI qla4xxx sono accessibili tramite:
~]# iscsiadm -m fw
Per disabilitare uesta funzione impostare il parametro del modulo ql4xdisablesysfsboot=1 nel modo seguente:
  1. Impostare il parametro nel file /etc/modprobe.d:
    ~]# echo "options qla4xxx ql4xdisablesysfsboot=1" >> /etc/modprobe.d/qla4xxx.conf
  2. Ricaricare il modulo qla4xxx eseguendo il seguente set di comandi:
    ~]# rmmod qla4xxx
    ~]# modprobe qla4xxx
    o per un avvio da un dispositivo qla4xxx, tramite il riavvio del vostro sistema.
Quando avviato da un dispositivo qla4xxx, l'aggiornamento da Red Hat Enterprise Linux 6.1 a Red Hat Enterprise Linux 6.2 causerà il fallimento dell'avvio del sistema con il nuovo kernel. Per maggiori informazioni relative a questo problema consultare le Note tecniche.
Supporto kexec kdump su file system aggiuntivi

Kdump (un meccanismo di crash dumping basato su kexec) supporta ora il dumping del core sui seguenti file system in Red Hat Enterprise Linux 6:

  • Btrfs (Questo file system è una Anteprima di tecnologia)
  • ext4
  • XFS (Da notare che XFS è un prodotto a livelli e deve essere installato per abilitare questa funzione)
pkgtemp con coretemp

È stato eseguito il merge del modulo pkgtemp con il modulo coretemp. Il modulo pkgtemp è ora deprecato. Il modulo coretemp supporta ora tutte le funzioni precedenti più le funzioni supportate dal modulo pkgtemp.

Precedentemente coretemp forniva solo le temperature del processore mentre il modulo pkgtemp forniva le temperature del pacchetto CPU. Con Red Hat Enterprise Linux 6.2 il modulo coretemp permette una lettura delle temperature relative al pacchetto, processore e delle periferiche.
È consigliabile modificare qualsiasi script che utilizza uno di questi moduli.
Invio senza alcun lock delle funzioni queuecommand del driver SCSI

Con Red Hat Enterprise Linux 6.2 lo SCSI mid-layer supporta l'invio opzionale senza lock delle funzioni queuecommand del driver SCSI.

Questo è un backport dello SCSI lock pushdown commit dell'upstream. Il backport conserva la compatibilità binaria con Red Hat Enterprise Linux 6.0 e Red Hat Enterprise Linux 6.1. Per la conservazione della suddetta compatibilità binaria è necessaria una divergenza dal meccanismo equivalente SCSI lock pushdown dell'upstream.
Un flag precedentemente non utilizzato nella struttura scsi_host_template viene usato dai driver SCSI per indicare allo SCSI midlayer che il queuecommand del driver verrà inviato senza alcun lock del bus host di SCSI.
Il comportamento predefinito è quello in cui il lock dello Scsi_Host viene trattenuto durante l'invio di queuecommand. L'impostazione del bit lockless dello scsi_host_template prima di scsi_host_alloc causerà un invio della funzione queuecommand del driver senza il trattenimento del lock Scsi_Host. In tal caso la responsabilità per qualsiasi protezione del lock necessaria verrà distribuita nel percorso del codice queuecommand del driver.
Di seguito sono riportati i driver SCSI aggiornati per l'utilizzo di queuecommand senza alcun lock con Red Hat Enterprise Linux 6.2:
  • iscsi_iser
  • be2iscsi
  • bnx2fc
  • bnx2i
  • cxgb3i
  • cxgb4i
  • fcoe (software fcoe)
  • qla2xxx
  • qla4xxx
Supporto per la modalità target Fiber Channel over Ethernet (FCoE)

Red Hat Enterprise Linux 6.2 include il supporto per la modalità target Fiber Channel over Ethernet (FCoE) come Anteprima di tecnologia. È configurabile attraverso targetadmin, fornito dal pacchetto fcoe-target-utils. FCoE è stato ideato per l'uso con una rete di supporto per il Data Center Bridging (DCB). Ulteriori informazioni sono disponibili nelle pagine man di dcbtool(8) e targetadmin(8).

Importante

Questa funzione utilizza il nuovo SCSI target layer presente con questa Anteprima di tecnologia e non deve essere utilizzato indipendentemente dal supporto del target FCoE. Questo pacchetto presenta la licenza AGPL.
Supporto per il parametro d'avvio crashkernel=auto

Con il Red Hat Enterprise Linux 6.1, BZ#605786, il parametro d'avvio crashkernel=auto è stato deprecato. Tuttavia con Red Hat Enterprise Linux 6.2, il supporto per crashkernel=auto continua su tutti i sistemi Red Hat Enterprise Linux 6.

Supporto per MD RAID nello spazio utente

Le utilità mdadm e mdmon sono state aggiornate per supportare l'Array Auto-Rebuild, le Migrazioni dei livelli RAID, la limitazione del supporto RAID 5, ed il SAS-SATA drive roaming.

Merge delle richieste flush

Red Hat Enterprise Linux 6.2 supporta il merge delle richieste flush per assistere quei dispositivi che eseguono un processo lento di flush.

Supporto UV2 Hub

Red Hat Enterprise Linux 6.2 supporta UV2 Hub. UV2 è il chip UVhub successore al chip corrente UV1 hub. UV2 utilizza il chip HARP hub attualmente in fase di sviluppo. UV2 fornisce un supporto per i nuovi socket di Intel. Esso fornisce nuove funzioni per il miglioramento delle prestazioni. UV2 è stato creato per supportare 64 TB di memoria in un SSI. MMR del controllore del nodo sono stati aggiornati per i sistemi UV.

Parametro d'avvio acpi_rsdp

Red Hat Enterprise Linux 6.2 introduce il parametro d'avvio acpi_rsdp per kdump per il passaggio di un indirizzo ACPI RSDP, permettendo l'avvio senza EFI (Extensible Firmware Interface) del kernel di kdump.

Miglioramenti driver QETH

I seguenti miglioramenti sono stati implementati sul driver del dispositivo di rete QETH:

  • Supporto per il trasporto HiperSockets af_iucv
  • Supporto indicazioni adattatore del segnale forzato
  • Supporto per la consegna asincrona di blocchi di storage
  • Nuovo ID del protocollo ethernet aggiunto al modulo if_ether
Algoritmi CPACF

Aggiunto il supporto ai nuovi algoritmi CPACF (CP Assist for Cryptographic Function), supportati da IBM zEnterprise 196. I nuovi algoritmi accelerati hardware sono:

  • Modalità CTR per AES
  • Modalità CTR per DES e 3DES
  • Modalità XTS per AES con lunghezza della chiave 128 e 256 bit
  • GHASH message digest per la modalità GCM

Red Hat Enterprise Linux 6.2 supporta il riposizionamento condizionato delle risorse attraverso il parametro del kernel pci=realloc. Questa funzione fornisce una soluzione ad interim per l'aggiunta di una risorsa pci di riposizionamento dinamica senza causare alcuna regressione. Per impostazione predefinita disabilita il riposizionamento ma permette di abilitarlo attraverso il parametro della linea di comando del kernel pci=realloc.

Miglioramenti PCI

Per impostazione predefinita il riposizionamento dinamico è disabilitato. Può essere abilitato con il parametro della linea di comando del kernel pci=realloc. Altresì le risorse del bridge sono state aggiornate in modo da fornire una gamma più vasta di chiamate PCI assign unassigned.

SMEP

Red Hat Enterprise Linux 6.2 abilita SMEP (Supervision Mode Execution Protection) nel kernel. SMEP fornisce un meccanismo di imposizione che permette al sistema di impostare un requisito il quale non verrà eseguito dalle pagine dell'utente se in modalità supervisor. Questo requisito viene applicato dalla CPU. Esso è in grado di impedire tutti gli attacchi, indipendentemente dalla vulnerabilità del codice del sistema, eseguiti dalle pagine della modalità utente mentre la CPU è in modalità supervisor.

Isruzioni stringa veloce migliorate

Aggiunto il supporto per le istruzioni REP MOVSB/STORESB dell stringa veloce per l'ultimissima piattaforma Intel.

USB 3.0 xHCI

Aggiornato il driver parte host USB 3.0 xHCI in modo da aggiungere un supporto split-hub permettendo al controllore host xHCI di comportarsi come un hub USB 3.0 esterno registrando un USB 3.0 roothub ed un USB 2.0 roothub.

Supporto parametri ACPI, APEI, e EINJ

Per impostazione predefinita è ora disabilitato il supporto per i parametri ACPI, APEI, e EINJ.

pstore

Red Hat Enterprise Linux 6.2 supporta pstore— una interfaccia del file system per lo storage persistente dipendente dalla piattaforma.

Stampa informazioni errore PCIe AER

Aggiunto il supporto per il riporto dell'errore hardware APEI (ACPI Platform Error Interface) basato su printk il quale fornisce un metodo per unificare gli errori da diversi sorgenti inviandoli alla console del sistema.

Driver ioatdma

Aggiornato il driver ioatdma (dma engine driver) per il supporto dei processori Intel con un motore dma.

Driver seriale 8250 PCI

Aggiunto il supporto per l'adattatore Digi/IBM PCIe 2-port Async EIA-232 al driver seriale 8250 PCI. Altresì il supporto EEH (Enhanced Error Handling) per l'adattatore Digi/IBM PCIe 2-port Async EIA-232 è stato aggiunto al driver seriale 8250 PCI.

Supporto ARI

È stato aggiunto al Red Hat Enterprise Linux 6.2 il supporto ARI (Alternative Routing- ID Interpretation), una funzione PCIe v2.

PCIe OBFF

È stato aggiunto per l'ultimissima piattaforma di Intel il supporto abilita/disabilita PCIe OBFF (Optimized Buffer Flush/Fill). OBFF fornisce ai dispositivi le informazioni sulle interruzioni e attività della memoria e su di un potenziale impatto della riduzione dell'alimentazione, migliorando l'efficienza energetica.

Catturare i riporti oops/panic su NVRAM

Con Red Hat Enterprise Linux 6.2, il kernel è in grado di catturare i riporti oops/panic dal buffer dmesg all'interno di NVRAM su architetture PowerPC.

Driver MXM

Eseguito il backport del driver MXM, responsabile per la gestione dello smistamento dei grafici su piattaforma NVIDIA, su Red Hat Enterprise Linux 6.2.

Page coalescing

Red Hat Enterprise Linux 6.2 introduce il page coalescing, una funzione sui server IBM la quale permette una combinazione di pagine identiche tra le partizioni logiche.

Partizionamento L3 cache

Aggiunto un supporto al partizionamento L3 cache alle CPU dell'ultimissima AMD.

Modulo thinkpad_acpi

Il modulo thinkpad_acpi è stato aggiornato per il supporto ai nuovi modelli ThinkPad.

Supporto C-State

Aggiunto a intel_idle il supporto C-State per l'ultimissimo processore Intel.

Messggi d'avviso IOMMU

Sui sistemi AMD, Red Hat Enterprise Linux 6.2 ora mostra i messaggi d'avviso per IOMMU (Input/Output Memory Management Unit).

Registrazione su dmesg durante l'avvio

Durante il processo d'avvio è ora possibile eseguire una registrazione dei messaggi relativi al BIOS, al sistema ed alla scheda su dmesg.

Supporto IBM PowerPC

Aggiunte al kernel le voci cputable, per un supporto dell'ultimissima famiglia di processori IBM PowerPC.

VPHN

È stata disabilitata la funzione VPHN (Virtual Processor Home Node) su IBM System p.

Driver supportati dall'ultimissimo chipset di Intel

I seguenti driver sono ora supportati dall'ultimissimo chipset di Intel:

  • Driver i2c-i801 SMBus
  • AHCI-mode SATA ahci
  • Driver IDE-mode SATA ata_piix
  • Driver TCO Watchdog
  • Driver controllore LPC
exec-shield

Su sistemi IBM PowerPC il valore exec-shield in sysctl o nel parametro /proc/sys/kernel/exec-shield non viene più imposto.

kdump su PPC64

Aggiunti controlli e correzioni supplementari per il supporto di kdump sui sistemi PowerPC e IBM POWER a 64-bit.

Modulo UV MMTIMER

Il modulo UV MMTIMER (uv_mmtimer) è stato abilitato su piattaforme SGI. Il modulo uv_mmtimer permette un accesso diretto all'orologio real time del sistema UV sincronizzato su tutti gli hub.

Modulo IB700

Con Red Hat Enterprise Linux 6.2 è stato aggiunto il supporto per il modulo IB700

Annullamento registri PCIe AER Mask

Aggiunto il parametro del modulo aer_mask_override il quale fornisce la possibilità di sovrascrivere le maschere corrette e non corrette per un dispositivo PCI. La maschera avrà un bit corrispondente allo stato passato nella funzione aer_inject().

Supporto controllore host USB 3. su PPC64

Aggiunto il supporto del controllore host USB 3 su sistemi PowerPC e IBM POWER a 64 bit.

Miglioramenti OOM killer

Eseguito il backport dell'implementazione migliorata OOM (Out of Memory) killer con Red Hat Enterprise Linux 6.2. I suddetti miglioramenti includono:

  • Una preferenza da parte di OOM killer per i processi in procinto di uscire dall'applicazione.
  • Il processo OOM kill elimina anche i processi figlio dei processi selezionati.
  • Aggiunti gli euristici per arrestare i processi forkbomb.
Il parametro regolabile oom_score_adj /proc aggiunge il valore archiviato in ogni variabile oom_score_adj del processo, il quale può essere regolato tramite /proc. Ciò permette di apportare una modifica per ogni processo che interessa OOM killer nello spazio utente; una impostazione di -1000 disabiliterà interamente OOM kill, mentre +1000 contrassegna il processo come target primario di OOM.
Per maggiori informazioni consultare http://lwn.net/Articles/391222/ .
Driver zram

Red Hat Enterprise Linux 6.2 fornisce un driver zram aggiornato (crea dispositivi a blocchi generici compressi basati sulla RAM).

Utilità taskstat

Con Red Hat Enterprise Linux 6.2 taskstat (stampa gli stati dei compiti ASET) è stato migliorato tramite una granularità dell'ora della CPU in microsecondi per essere utilizzato da top.

Utilità perf

Red Hat Enterprise Linux 6.2 aggiorna l'utilità perf alla versione 3.1 dell'upstream insieme con un aggiornamento del kernel alla versione v 3.1. Consultare BZ#725524 per le nuove funzioni del kernel supportate fornite dall'utilità perf. La versione aggiornata di perf include:

  • Un supporto cgroup
  • Una gestione di /proc/sys/kernel/kptr_restrict
  • Un numero maggiore di stampe delle percentuali di cache-miss
  • Le opzioni -d -d e -d -d -d per un numero maggiore di eventi CPU
  • L'opzione --sync/-S
  • Il supporto per il parametro PERF_TYPE_RAW
  • Ulteriore documentazione sull'opzione -f/--fields
  • Il pacchetto python-perf per il supporto dei binding di python.
Supporto OProfile

Red Hat Enterprise Linux 6.2 aggiunge un supporto OProfile per gli ultimissimi processori di Intel.

Conteggio IRQ

Il numero di interrupt request (IRQ) viene ora gestito all'interno di un contatore sum of all irq, riducendo così il costo di ricerca nel file /proc/stat.

Miglioramento della schedulazione

Red Hat Enterprise Linux 6.2 introduce un miglioramento nel processo di schedulazione dove sarà possibile fornire un suggerimento "hint" con il buddy hint successivo relativo a categorie di tipo sleep (inattive) e preempt. Il suddetto suggerimento/miglioramento assiste il carico di lavoro di compiti multipli in diversi gruppi.

Miglioramenti Transparent Huge Page

In Red Hat Enterprise Linux 6.2 le Transparent Huge Page sono supportate in diverse posizioni del kernel:

  • Le chiamate di sistema mremap, mincore, e mprotect
  • Parametri regolabili /proc: /proc/<pid>/smaps e /proc/vmstat
Le Transparent Huge Pages aggiungono qualche miglioramento di compattazione.
XTS AES256 self-tests

Red Hat Enterprise Linux 6.2 aggiunge i XTS (XEX-based Tweaked CodeBook) AES256 self-tests per soddisfare i requisiti FIPS-140.

Pacchetti ignorati da netfilter di SELinux

In precedenza i SELinux netfilter hook ritornavano NF_DROP in presenza di un pacchetto ignorato. Con Red Hat Enterprise Linux 6.2, se si verifica tale comportamento verrà generato un fatal error permanente. Così facendo l'errore sarà ritornato allo stack ed in alcune posizioni e applicazioni verrà indicato più velocemente.

LSM hook

In Red Hat Enterprise Linux 6.2, le opzioni remount mount (mount -o remount) sono passate ad un nuovo hook LSM.

Modalità predefinita per sistemi UEFI

Red Hat Enterprise Linux 6.0 e 6.1 eseguivano i sistemi UEFI in modalità fisica. Red Hat Enterprise Linux 6.2 per default esegue i sistemi UEFI in modalità virtuale. Per ottenere il precedente comportamento passare il parametro del kernel physefi.

Metodo predefinito per kdumping attraverso SSH

Con Red Hat Enterprise Linux 6, il metodo predefinito core_collector per il kdumping del core attraverso SSH è stato modificato da scp a makedumpfile, diminuendo così la dimensione del core file durante la copiatura attraverso il link della rete risultando in un processo più veloce.

Se avete bisogno di un core file di dimensione completa del vecchio vmcore specificate quanto di seguito riportato nel file /etc/kdump.conf:
core_collector /usr/bin/scp