La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
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.
Cisco consiglia di leggere la sezione Risoluzione dei problemi di blocco del router prima di procedere con questo documento.
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.
Fare riferimento a Cisco Technical Tips Conventions per ulteriori informazioni sulle convenzioni dei documenti.
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.
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 valore con il valore del contatore di programmi (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.
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 memoria 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.
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, si prenda 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 è 0x60000000 - 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.
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. Arresto anomalo del router causato da 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).
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 hardware installato
Errore software
Hardware fuori sede
Errore hardware
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.
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 è in grado di avviarsi, è possibile ignorare la configurazione per stabilire se è questa la causa del problema. Attenersi alla procedura seguente:
Eseguire l'interruzione in ROMMON inviando la sequenza di interruzione al router durante i primi 60 secondi di avvio.
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.
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.
Le informazioni contenute nell'errore del 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.
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: |
---|
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. |
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
09-Nov-2001 |
Versione iniziale |