Note su Solaris 10 6/06

Problemi durante l'esecuzione del debugger

I problemi descritti qui di seguito riguardano il debugger del kernel.

SPARC: Problemi con il debugger dbx nell'elaborazione di oggetti a 64 bit (6347707)

Il debugger dbx si interrompe con un errore di accesso alla memoria nell'elaborazione di determinati file eseguibili e librerie a 64 bit. Tuttavia, il problema non interessa l'utilizzo normale di questi oggetti a 64 bit. Viene visualizzato un messaggio di errore simile al seguente:


dbx: internal error: signal SIGBUS (invalid address alignment)

Soluzione: utilizzare il debugger mdb o la funzione Solaris Dynamic Tracing. Queste soluzioni alternative sono in grado di diagnosticare i processi che utilizzano oggetti a 64 bit.

Il sistema può entrare in un ciclo infinito se viene modificata la CPU master (4405263)

Durante l'esecuzione del debugger del kernel di Solaris per la diagnosi di un sistema in funzione, il sistema può entrare in un ciclo con messaggi di errore incompleti. Il ciclo si verifica quando viene modificata la CPU master della PROM OpenBoot. Dopo il processo di ripristino, il sistema ritorna operativo. Tuttavia, le tracce dell'errore originale vanno perdute. Ciò significa che non è possibile eseguire una diagnosi dell'errore irreversibile.

Soluzione: quando il sistema si trova al livello della PROM, viene visualizzato il prompt ok di OpenBoot. Nei sistemi con più CPU, il prompt ok è preceduto da un numero racchiuso tra parentesi graffe. Questo numero indica la CPU attiva nel sistema. Per eseguire la sessione di debug al livello della PROM, procedere come segue.

  1. Elevare pil a f digitando il comando seguente:


    {0} ok h# 0f pil!
    
  2. Usare il comando switch-cpu per passare selettivamente dalla CPU attualmente attiva ad altre CPU. Ad esempio, per passare dalla CPU #0 alla CPU #1, digitare il comando seguente:


    (0) ok 1 switch-cpu
    

    Il prompt ok è ora preceduto dal numero della nuova CPU attivata.


    {1} ok
  3. Eseguire il debugger.

  4. Al termine della sessione del debugger, eseguire un comando reset-all per tornare all'uso normale del sistema.


Nota –

Verificare di avere aggiornato il sistema all'ultima versione della PROM OpenBoot.