Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Convenzioni

Identificazione degli arresti anomali degli errori del bus

Risoluzione dei problemi di blocco del bus

Risoluzione dei problemi di arresto anomalo del bus su piattaforme con processore 6800

Risoluzione dei problemi di blocco del bus sulle piattaforme del processore RISC

Tipi speciali di arresti anomali del bus

Tecniche di risoluzione dei problemi per i loop di avvio dell'eccezione di errore del bus

Il software Cisco IOS caricato non supporta l'hardware installato

Errore software

Hardware fuori sede

Errore hardware

Informazioni da raccogliere se si apre una richiesta di assistenza

Informazioni correlate

Introduzione

Questo documento spiega come identificare i crash del bus e come risolvere i problemi relativi a questi crash, a seconda del tipo di processore che si ha nel router Cisco.

Prerequisiti

Requisiti

Cisco consiglia di leggere la sezione Risoluzione dei problemi di blocco del router prima di procedere con questo documento.

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Tutte le versioni del software Cisco IOS®

- Tutti i router Cisco

Nota: questo documento non si applica agli switch Cisco Catalyst o alle piattaforme MGX.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Convenzioni

Fare riferimento a Cisco Technical Tips Conventions per ulteriori informazioni sulle convenzioni dei documenti.

Identificazione degli arresti anomali degli errori del bus

Il sistema rileva un errore del bus quando il processore tenta di accedere a una posizione di memoria che non esiste (errore software) o non risponde correttamente (problema hardware). L'errore del bus può essere identificato dall'output del comando show version fornito dal router se il sistema non è stato riacceso o ricaricato manualmente.

Se il dispositivo Cisco restituisce i risultati di un comando show version o show technical-support (dalla modalità di abilitazione), è possibile utilizzarlo per visualizzare i potenziali errori e correggerli. Per utilizzarlo, è necessario essere un cliente registrato, aver eseguito l'accesso e avere JavaScript abilitato.

Router uptime is 2 days, 21 hours, 30 minutes

System restarted by bus error at PC 0x30EE546, address 0xBB4C4

System image file is "flash:igs-j-l.111-24.bin", booted via flash

.........

Al prompt della console è possibile visualizzare questo messaggio di errore anche durante un errore del bus:

*** System received a Bus Error exception ***

signal= 0xa, code= 0x8, context= 0x608c3a50

PC = 0x60368518, Cause = 0x20, Status Reg = 0x34008002

.........

Quindi, il router viene ricaricato. In alcuni casi, tuttavia, il router subisce un loop di arresti anomali e ricariche e per uscire da questo loop è necessario un intervento manuale.

Un altro problema correlato è un arresto anomalo del processore di interfaccia versatile (VIP). Se si verifica questo problema, vengono registrati messaggi di errore simili a quelli riportati di seguito:

%VIP2 R5K-1-MSG: slot0 System reloaded by a Bus Error exception

%VIP2 R5K-1-MSG: slot0 caller=0x600BC974

%VIP2 R5K-1-MSG: slot0 System exception: sig=10, code=0x408,

context=0x605B51E0

Infine, un altro tipo di arresto anomalo del bus è un arresto anomalo di una scheda di linea su un Cisco serie 12000 Internet Router. Se si verifica questo problema, i messaggi di errore simili a questi vengono registrati nell'output show context:

Router#show context

...

CRASH INFO: Slot 1, Index 1, Crash at 11:27:15 utc  Wed May 16 2001

VERSION:

GS Software (GLC1-LC-M), Version 12.0(16.5)S, EARLY DEPLOYMENT MAINTENANCE

INTERIM SOFTWARE

TAC Support: http://www.cisco.com/pcgi-bin/ibld/view.pl?i=support

Compiled Thu 29-Mar-01 17:12 by ninahung

Card Type: 3 Port Gigabit Ethernet, S/N

System exception: SIG=10, code=0x2008, context=0x40D8DF44

System restarted by a Bus Error exception

STACK TRACE:

-Traceback= 40165800 4038D0FC 4025C7BC 4026287C 4029581C 402EECF8 400C0144

CONTEXT:

$0 : 00000000, AT : 00000000, v0 : 00000044, v1 : 0FE00020

a0 : 00000000, a1 : 0FE00000, a2 : 00000000, a3 : 39EC6AAB

t0 : 00000030, t1 : 34008D01, t2 : 34008100, t3 : FFFF00FF

t4 : 400C01E8, t5 : 00000001, t6 : 00000001, t7 : 00000001

s0 : 40DCDD20, s1 : 0FE00000, s2 : 00000000, s3 : 000005DC

s4 : 00000000, s5 : 0FE00020, s6 : 00000004, s7 : 414CF120

t8 : 41680768, t9 : 00000000, k0 : 00000000, k1 : FFFF8DFD

gp : 40CB9780, sp : 4105BFE8, s8 : 41652BA0, ra : 4038D0FC

EPC : 0x40165800, SREG : 0x34008D03, Cause : 0x00002008

ErrorEPC : 0xBFC22B94

-Process Traceback= No Extra Traceback

Per ulteriori informazioni, vedere Risoluzione dei problemi di arresto anomalo delle schede di linea su Cisco serie 12000 Internet Router.

se il dispositivo Cisco restituisce i risultati di un comando show context, è possibile usare Cisco CLI Analyzer per visualizzare i potenziali errori e correggerli. Per utilizzare Cisco CLI Analyzer, è necessario essere un cliente registrato, aver eseguito l'accesso e avere JavaScript abilitato.

Risoluzione dei problemi di blocco del bus

La prima cosa da fare è individuare la posizione della memoria (nota anche come "indirizzo" o "operando dell'indirizzo") a cui il router ha tentato di accedere quando si è verificato l'errore del bus. Con queste informazioni, si ha un'indicazione se il problema è causato dal software Cisco IOS o dall'hardware del router. Nell'esempio, "Sistema riavviato a causa di un errore del bus a PC 0x30EE546, indirizzo 0xBB4C4", la posizione di memoria a cui il router ha tentato di accedere è 0xBB4C4. Non confondere questo con il valore del contatore di programma (PC) indicato sopra.

La seconda cosa da fare è determinare il tipo di processore nel router. Le posizioni degli indirizzi di memoria per i router variano a seconda del tipo di processore. I router Cisco dispongono di due tipi principali di processori:

- Processori 6800

Questa è parte di un output show version che indica che il router ha un processore 6800:

cisco 2500 (68030) processor (revision D) with 8192K/2048K bytes of memory.

Le piattaforme router con processori 6800 includono:

- Cisco serie 1000 Router

- Cisco serie 1600 Router

- Cisco serie 2500 Router

- Cisco serie 4000 Router

- Moduli Route Processor (RP) su router Cisco serie 7000 (RP)

- Processori RISC (Reduced Instruction Set Computing)

Questo è parte di un output show version che indica che il router ha un processore RISC:

cisco 3640 (R4700) processor (revision 0x00) with 49152K/16384K bytes of memory.

R in (R4700) indica un processore RISC.

Le piattaforme router con processori RISC includono:

- Cisco serie 3600 Router

- Cisco serie 4500 Router

- Cisco serie 4700 Router

- Route Switch Processor (RSP) Module su router Cisco serie 7500 e Cisco serie 7000 (RSP7000)

- Moduli Network Processor Engine (NPE) su router Cisco serie 7200

- Multilayer Switch Feature Card (MSFC) su Cisco serie 7600 Router o switch Catalyst 6000

- Moduli Performance Routing Engine (PRE) su router Internet Cisco serie 1000

- Moduli Gigabit Route Processor (GRP) su router Internet Cisco serie 1200

Una volta determinati l'indirizzo e il tipo di processore, è possibile iniziare con una risoluzione dei problemi più dettagliata.

Risoluzione dei problemi di arresto anomalo del bus su piattaforme con processore 6800

Con l'indirizzo a cui il router ha avuto accesso quando si è verificato l'errore del bus, usare il comando show region per determinare la posizione di memoria a cui corrisponde l'indirizzo. Se l'indirizzo segnalato dall'errore del bus non rientra negli intervalli visualizzati nell'output del comando show region, il router ha tentato di accedere a un indirizzo non valido. Ciò indica che si tratta di un problema del software Cisco IOS. Usare Cisco CLI Analyzer (solo utenti registrati) per decodificare l'output del comando show stack e identificare il bug del software Cisco IOS che causa l'errore del bus.

D'altra parte, se l'indirizzo rientra in uno degli intervalli nell'output dell'area di visualizzazione, il router ha eseguito l'accesso a un indirizzo di memoria valido, ma l'hardware corrispondente a tale indirizzo non risponde correttamente. Indica un problema hardware.

Di seguito è riportato un esempio dell'output della regione di visualizzazione:

Router#show region

Region Manager:

Start         End     Size(b)  Class  Media  Name

0x00000000  0x007FFFFF     8388608  Local  R/W    main

0x00001000  0x0001922F       98864  IData  R/W    main:data

0x00019230  0x000666B3      316548  IBss   R/W    main:bss

0x000666B4  0x007FEFFF     7965004  Local  R/W    main:heap

0x007FF000  0x007FFFFF        4096  Local  R/W    main:flhlog

0x00800000  0x009FFFFF     2097152  Iomem  R/W    iomem

0x03000000  0x037FFFFF     8388608  Flash  R/O    flash

0x0304033C  0x037A7D3F     7764484  IText  R/O    flash:text

Nota: in alcune versioni precedenti del software Cisco IOS, questo comando non è disponibile. L'output show region fa parte dell'output show tech-support del software Cisco IOS versione 12.0(9).

Gli indirizzi vengono visualizzati in formato esadecimale. Gli indirizzi compresi negli intervalli "Inizio" e "Fine" sono indirizzi di memoria validi.

Main corrisponde alla memoria principale o alla RAM dinamica (DRAM).

iomem corrisponde alla memoria I/O (Input/Output), che indica parti diverse per piattaforme diverse. Ad esempio, DRAM per Cisco 2500, SRAM (Shared RAM) per Cisco 4000.

Sempre utilizzando l'esempio precedente, il sistema è stato riavviato a causa di un errore del bus al PC 0x30EE546, indirizzo 0xBB4C4, questo arresto anomalo del bus proviene da un router Cisco 2500 con output show region. L'indirizzo 0xBB4C4 equivale a 0x000BB4C4. Utilizzando l'output show region, questo indirizzo rientra nell'intervallo "main" o, più specificamente, "main:heap" o 0x000666B4-0x007FEFFF. Come accennato in precedenza, "main" corrisponde alla memoria principale o alla DRAM, quindi è necessario controllare i chip della DRAM.

Se si tratta di un nuovo router o se il router è stato spostato da una posizione a un'altra, i chip di memoria spesso si allentano. È consigliabile ricollocare o spingere saldamente i chip di memoria nello slot. Nella maggior parte dei casi è sufficiente per risolvere questo tipo di arresto anomalo.

Se l'errore del bus si blocca su indirizzi che non rientrano negli intervalli di indirizzi della regione di visualizzazione, usare Cisco CLI Analyzer per decodificare l'output del comando show stacks e identificare il bug del software Cisco IOS che sta causando l'errore del bus. Se non si è certi di quale ID bug possa corrispondere o di quale versione del software Cisco IOS contenga la soluzione al problema, l'aggiornamento del software Cisco IOS all'ultima versione nella release train è un'opzione che spesso risolve il problema, in quanto solitamente contiene la correzione per un elevato numero di bug.

Se il dispositivo Cisco restituisce i risultati di un comando show stack o show technical-support (dalla modalità di abilitazione), è possibile usare Cisco CLI Analyzer per visualizzare i potenziali errori e correggerli. Per utilizzare Cisco CLI Analyzer, è necessario essere un cliente registrato, aver eseguito l'accesso e avere JavaScript abilitato.

Risoluzione dei problemi di blocco del bus sulle piattaforme del processore RISC

Si consiglia di leggere la sezione sulla risoluzione dei problemi di blocco degli errori del bus sulle piattaforme del processore 68000 prima di procedere con questa sezione.

Sui processori RISC, il software Cisco IOS utilizza indirizzi virtuali tramite l'uso del TLB (Translation Lookaside Buffer) che converte gli indirizzi virtuali in indirizzi fisici. L'indirizzo riportato dagli errori del bus sui processori RISC è pertanto l'indirizzo virtuale in contrapposizione all'indirizzo fisico utilizzato dai processori 68000.

L'output del comando show region deve essere utilizzato per controllare l'indirizzo segnalato dall'errore del bus. Per illustrare questa situazione, prendiamo l'esempio seguente:

System was restarted by bus error at PC 0x60104864, address 0xC

Utilizzando l'output del comando show region riportato di seguito, è possibile verificare che 0xC non sia un indirizzo virtuale valido e concludere che l'errore del bus è stato causato da un problema software. Usare Cisco CLI Analyzer (solo utenti registrati) per decodificare l'output del comando show stack o show technical-support (dalla modalità di abilitazione) e identificare il bug del software Cisco IOS che sta causando l'errore del bus.

Un altro vantaggio dell'utilizzo del comando show region è che la mappatura della memoria dipende dalla quantità di memoria installata sul router. Ad esempio, se si dispone di 64 MB di DRAM (64 x 1024 x 1024 = 67108864 byte = 0x4000000 byte), l'intervallo di DRAM è 0x6000000 - 0x63FFFF per 64 MB. Questa condizione viene confermata con il comando show region:

Router#show version | i of memory

cisco RSP2 (R4700) processor with 65536K/2072K bytes of memory.

Router#show region

Region Manager:

Start         End     Size(b)  Class  Media  Name

0x40000000  0x40001FFF        8192  Iomem  REG    qa

0x40002000  0x401FFFFF     2088960  Iomem  R/W    memd

0x48000000  0x48001FFF        8192  Iomem  REG    QA:writethru

0x50002000  0x501FFFFF     2088960  Iomem  R/W    memd:(memd_bitswap)

0x58002000  0x581FFFFF     2088960  Iomem  R/W    memd:(memd_uncached)

0x60000000  0x63FFFFFF    67108864  Local  R/W    main

0x60010908  0x60C80B11    13042186  IText  R/O    main:text

0x60C82000  0x60F5AF1F     2985760  IData  R/W    main:data

0x60F5AF20  0x610E35FF     1607392  IBss   R/W    main:BSS

0x610E3600  0x611035FF      131072  Local  R/W    main:fastheap

0x61103600  0x63FFFFFF    49269248  Local  R/W    main:heap

0x80000000  0x83FFFFFF    67108864  Local  R/W    main:(main_k0)

0x88000000  0x88001FFF        8192  Iomem  REG    QA_k0

0x88002000  0x881FFFFF     2088960  Iomem  R/W    memd:(memd_k0)

0xA0000000  0xA3FFFFFF    67108864  Local  R/W    main:(main_k1)

0xA8000000  0xA8001FFF        8192  Iomem  REG    QA_k1

0xA8002000  0xA81FFFFF     2088960  Iomem  R/W    memd:(memd_k1)

Se si verifica un errore del bus a 0x65FFFFFF, l'output show region prende in considerazione la quantità di memoria e indica che si tratta di un indirizzo non valido (bug del software).

In sintesi:

- Utilizzare il comando show region per verificare se l'indirizzo indicato dall'errore del bus è compreso negli intervalli di indirizzi utilizzati dal router.

- Se l'indirizzo è compreso in un intervallo di indirizzi virtuali, sostituire l'hardware corrispondente a tale intervallo.

- Se l'indirizzo non rientra in un intervallo di indirizzi virtuali, usare Cisco CLI Analyzer (solo utenti registrati) per decodificare l'output del comando show stack o show technical-support (dalla modalità di abilitazione) e identificare il bug del software Cisco IOS che sta causando l'errore del bus.

- Prendere in seria considerazione l'installazione della versione di manutenzione più recente del treno del software Cisco IOS in esecuzione.

Tipi speciali di arresti anomali del bus

Un tipo speciale di arresto anomalo del bus si ha quando l'arresto anomalo è causato da un contatore di programma danneggiato (PC). Il valore PC indica la posizione dell'istruzione eseguita dal processore quando si è verificato l'errore del bus. Quando si verifica un errore del bus causato da un PC danneggiato, sulla console viene visualizzato il seguente messaggio:

%ALIGN-1-FATAL: Corrupted program counter

pc=0x0, ra=0x601860BC, sp=0x60924540, at=0x60224854

In questo caso, il PC è passato all'indirizzo 0x0 (probabilmente a causa di un puntatore nullo), ma non è qui che si trova l'istruzione. Poiché si tratta di un problema software, non è necessario controllare con il comando show region.

Su altre piattaforme RISC (Cisco 3600, 4500 e così via), si ottiene un'eccezione SegV quando si passa a un PC illegale, non un errore del bus.

Un altro tipo di arresto anomalo del bus che si verifica di tanto in tanto è quando il valore del PC è uguale al valore dell'indirizzo. Ad esempio:

System returned to ROM by bus error at PC 0x606B34F0, address 0x606B34F0

Dal file crashinfo:

Unexpected exception, CPU signal 10, PC = 0x606B34F0

$0 : 00000000, AT : A001A24A, v0 : 00000000, v1 : 00000000

a0 : 00000000, a1 : 429CC394, a2 : 00000000, a3 : 62544344

t0 : 6069F424, t1 : 3400FF00, t2 : FFFFFFFB, t3 : 00000000

t4 : 606B8E68, t5 : 80000000, t6 : AA5C1022, t7 : 62FDE9D4

s0 : 62300000, s1 : 6281A1B8, s2 : 80007E20, s3 : 00000001

s4 : 00000001, s5 : 00000000, s6 : 62310000, s7 : 62544344

t8 : 62FDEA1C, t9 : 0D0D0D0D, k0 : 623079C0, k1 : 00000014

gp : 620B9E20, sp : 61E7E300, s8 : 00000000, ra : 606B8E68

EPC : 606B34F0, ErrorEPC : 606B8E68, SREG : 3400FF02

Cause 00004018 (Code 0x6): Instruction Bus Error exception

-Traceback= 606B34F0 606B8E68

Si noti che il valore del registro k1 è 0x14 (esadecimale), che equivale a 20 in decimale. Ciò fa riferimento a un'eccezione di parità della cache. In questo caso particolare, l'errore di parità non viene gestito correttamente ed è mascherato da un errore del bus. Il router si è arrestato in modo anomalo a causa di un errore del bus software nella funzione che gestisce un'eccezione di parità della cache.

Questo arresto anomalo deve essere considerato come un normale arresto anomalo dell'errore di parità della memoria del processore e seguire i suggerimenti forniti in Errori di parità della memoria del processore (PMPE).

È inoltre consigliabile valutare l'opportunità di aggiornare la versione del software Cisco IOS a una versione che abbia una correzione per CSCdv68388 - "Change cache error exception handler to resume not crash" (Modifica gestore eccezioni errore cache per riprendere l'attività non in caso di arresto anomalo del sistema), che è stata corretta a partire dal software Cisco IOS versione 12.2(10).

Tecniche di risoluzione dei problemi per i loop di avvio dell'eccezione di errore del bus

In questa sezione vengono illustrate le tecniche generali di risoluzione dei problemi per i loop di avvio delle eccezioni di errore del bus:

- Il software Cisco IOS caricato non supporta l'hardware installato

- Errore software

- Hardware fuori sede

- Errore hardware

Il software Cisco IOS caricato non supporta l'hardware installato

Verificare che tutte le schede di rete siano supportate dal software Cisco IOS. Software Advisor (solo utenti registrati) offre le versioni minime del software Cisco IOS necessarie per l'hardware. Verificare inoltre che l'immagine bootflash supporti l'hardware installato se si dispone di un router che supporta un'immagine di avvio come il router Cisco serie 7200 o Cisco serie 7500.

Errore software

Sui router serie 2600 e 3600, la memoria I/O del router è configurabile come percentuale della memoria principale. Se le impostazioni della memoria I/O non sono appropriate per i moduli di rete installati o le schede di interfaccia WAN (WIC), la piattaforma 2600/3600 potrebbe avere problemi di avvio e potrebbe bloccarsi a causa di errori del bus.

Se di recente è stata apportata una modifica alla configurazione software e il router è in un loop di avvio, è possibile che il problema sia causato da un bug del software.

Se il router non riesce ad avviarsi, è possibile ignorare la configurazione per stabilire se è questa la causa del problema. Attenersi alla procedura seguente:

1. Eseguire l'interruzione in ROMMON inviando la sequenza di interruzione al router durante i primi 60 secondi di avvio.

2. Da ROM Monitor, utilizzare il comando confreg per modificare il registro di configurazione in un'impostazione, ad esempio 0x2142, per ignorare la configurazione del router:

rommon 1 > confreg 0x2142

You must reset or power cycle for new config to take effect

rommon 2 > reset

Se il router viene avviato senza errori, il problema è causato da un problema di configurazione. Verificare che la configurazione sia supportata dal software Cisco IOS e dall'hardware. Se la funzione è supportata, usare Bug Toolkit (solo utenti registrati) per individuare eventuali bug software. Prendere in seria considerazione l'installazione della versione di manutenzione più recente del software Cisco IOS in esecuzione.

Hardware fuori sede

Se si verifica un errore del bus durante il ciclo di avvio, è possibile che l'hardware non sia inserito correttamente. Per le piattaforme di fascia bassa, ad esempio i router 3600 o 4000, riposizionare i moduli di rete/processori di rete.

Per le piattaforme di fascia più alta, ad esempio i router 7200 o 7500, ricollocare il processore, l'indirizzo VIP, gli adattatori di porta o la scheda di linea che si sta ricaricando a causa di un'eccezione di errore del bus.

Errore hardware

Le informazioni contenute nell'errore bus non consentono di isolare l'hardware. Pertanto, è importante rimuovere e reinserire le schede per individuare l'hardware che presenta il problema. Di seguito sono riportati alcuni passaggi consigliati per isolare il problema:

**Se il router non rileva il loop continuo dopo aver seguito le procedure di risoluzione dei problemi di cui sopra, il problema potrebbe essere stato causato da un modulo di rete collocato in modo non corretto. Si consiglia di monitorare il router per 24 ore per essere certi che continui a funzionare senza che il problema si verifichi di nuovo.

Informazioni da raccogliere se si apre una richiesta di assistenza

Se dopo aver eseguito le procedure di risoluzione dei problemi descritte in precedenza è ancora necessaria assistenza e si desidera aprire una richiesta di assistenza in Cisco Technical Support, includere le seguenti informazioni per la risoluzione di un errore del bus o di un'eccezione di errore del bus:

- Risoluzione dei problemi eseguita prima dell'apertura della richiesta

- mostra uscita supporto tecnico (se possibile, in modalità abilitazione)

- mostra output log o acquisizioni console, se disponibili

- file crashinfo (se presente e non già incluso nell'output show technical-support)

- mostra output regione (se non già incluso nell'output mostra supporto tecnico)

Allegare i dati raccolti alla richiesta in formato testo normale non compresso (txt). È possibile allegare informazioni alla richiesta caricandola tramite lo strumento Case Query Tool (solo clienti registrati). Se non è possibile accedere allo strumento di query della richiesta, è possibile allegare le informazioni pertinenti alla richiesta inviandole a attach@cisco.com con il numero della richiesta in oggetto.
Nota: non ricaricare o spegnere e riaccendere manualmente il router prima di aver raccolto le informazioni di cui sopra a meno che non sia necessario per risolvere un errore del bus, in quanto ciò potrebbe causare la perdita di informazioni importanti necessarie per determinare la causa principale del problema.

Informazioni correlate

- Risoluzione dei problemi di blocco del router

- Risoluzione dei problemi di arresto anomalo del processore di interfaccia versatile

- Risoluzione dei problemi di arresto anomalo delle schede di linea su Cisco serie 12000 Internet Router

- Cisco CLI Analyzer (solo clienti registrati)

- Supporto tecnico – Cisco Systems