このドキュメントでは、さまざまなパリティ エラー メッセージを確認した場合の、トラブルシューティング手順、および Cisco 7200 のどの部分またはコンポーネントで障害が発生しているかを特定する手順について説明します。このドキュメントを読む前に、『Troubleshooting Router Crashes』および『Processor Memory Parity Errors (PMPEs)』に目を通すことを推奨します。
注:このドキュメントの情報は、Cisco 7200シリーズルータに基づくものです。
このドキュメントに関しては個別の前提条件はありません。
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このマニュアルの情報は、特定のラボ環境に置かれたデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドでも、使用する前にその潜在的な影響について確実に理解しておく必要があります。
ドキュメント表記の詳細は、「シスコ テクニカル ティップスの表記法」を参照してください。
次の図は、Cisco 7200 で各種のパリティ エラー メッセージが表示された場合に、問題がある部分またはコンポーネントを特定する手順を説明しています。
注:show tech-supportの出力とコンソールのログをキャプチャして記録し、パリティエラーイベント中にすべてのcrashinfoファイルを収集します。
次の NPE のブロック図は、システム内でパリティ エラーが検出される場所を示しています。各タイプのエラー メッセージの説明は、こちらを参照してください。
NPE-300 では、ビット エラーによる動作不良からシステムを保護するために、共有メモリ(SDRAM)、PCI バス、および CPU の外部インターフェイスでパリティ チェックを使用しています。パリティ チェックではシングル ビット エラーを検出できますが、このとき使用されるのは、データの 8 ビットごとにチェック ビットを 1 つ追加するという簡単な方法です。ハードウェア コンポーネント間でデータが通過するときにビット エラーが検出されると、システムは誤ったデータを廃棄します。上の図のどこでシングル ビット エラーが発生しても、ルータはリセットされます。
NPE-400 では、シングル ビット エラー訂正とマルチビット エラー検出のエラー コード訂正(ECC)を共有メモリ(SDRAM)に対して使用しています。 NPE-400 のシステム アベイラビリティを向上させるために、ECC で SDRAM 内のシングル ビット エラーを訂正し、リセットやダウン タイムを伴わずにシステムを正常稼働できるようにしています。ECC を使用してシステム アベイラビリティを向上させる方法についての詳細は、ネットワーク アベイラビリティの向上に関するページを参照してください。
SDRAM でマルチビット エラーが検出されると、キャッシュ エラー例外またはバス エラーが発生してルータがリセットされます。システム内の他のメモリとバスでは、シングル ビット パリティ検出が使用されます。上図の 1 および 3 でシングル ビット エラーが発生すると、ルータがリセットされます。
読み取り操作または書き込み操作時に不良パリティを伴うデータがあれば、C7200/NPE ルータ上の複数のパリティ チェック デバイスによってそのデータが報告されます。次に、C7200/NPE システムで報告される各種のエラー メッセージについて説明します。
SDRAM の読み取り時に GT64120 システム コントローラでパリティ エラーが検出されると、このエラーが報告されます。
%ERR-1GT64120 (PCI0):Fatal error, Memory parity error (external) GT=0xB4000000, cause=0x0100E283, mask=0x0ED01F00, real_cause=0x00000200 Bus_err_high=0x00000000, bus_err_low=0x00000000, addr_decode_err=0x1C000000
2 回目の障害が発生したら、SDRAM を交換してください。それでも障害が発生する場合は、NPE を交換します。
注: GT64010 コントローラを使用している旧型の NPE(NPE-100/150/200)では、次のようなエラーが表示されます。
%ERR-1-GT64010: Fatal error, Memory parity error (external) cause=0x0300E283, mask=0x0CD01F00, real_cause=0x00000200 bus_err_high=0x00000000, bus_err_low=0x00000000, addr_decode_err=0x00000000
GT64010 コントローラには SDRAM ではなく Dynamic RAM(DRAM)が使用されているため、このケースでは 2 回目の障害が発生したら DRAM を交換します。それでも障害が発生する場合は、NPE を交換します。
マスター リード時のパリティ エラーは、Peripheral Component Interconnect(PCI)ブリッジへのアクセスによってトリガされるパリティ エラーです。次に、このパリティ エラー出力の例を示します。
%ERR-1-GT64120 (PCI0):Fatal error, Parity error on master read GT=B4000000, cause=0x0110E083, mask=0x0ED01F00, real_cause=0x00100000 Bus_err_high=0x00000000, bus_err_low=0x00000000, addr_decode_err=0x00000470 %ERR-1-SERR: PCI bus system/parity error %ERR-1-FATAL: Fatal error interrupt, No reloading Err_stat=0x81, err_enable=0xFF, mgmt_event=0x40
2 回目の障害が発生したら、該当コンポーネントを交換します。交換する必要のあるコンポーネントはシステム ブリッジ ダンプに示されます。
System bridge dump: Bridge 1, for PA bay 1, 3 and 5. Handle=1 DEC21150 bridge chip, config=0x0 (0x1C):sec status, io base =0x83A09141 Detected Parity Error on secondary bus Data Parity Detected on secondary bus (0x20):mem base & limit =0x4AF04880
次に、問題が発生している可能性のあるコンポーネントをエラー メッセージ出力から判別するための表を示します。
ブリッジ番号 | ブリッジの用途 | プライマリ バスでのパリティ エラー | セカンダリ バスでのパリティ エラー |
---|---|---|---|
ブリッジ 0 | ダウンストリーム MB0 ~ MB1 0 | NPE を交換 | NPE を交換。解決しない場合はシャーシを交換 |
ブリッジ 1 | アップストリーム MB1 ~ MB0 | NPE を交換。解決しない場合はシャーシを交換 | NPE を交換 |
ブリッジ 2 | ダウンストリーム MB0 ~ MB2 | NPE を交換 | NPE を交換。解決しない場合はシャーシを交換 |
ブリッジ 3 | アップストリーム MB2 ~ MB0 | NPE を交換。解決しない場合はシャーシを交換 | NPE を交換 |
ブリッジ番号 | ブリッジの用途 | プライマリ バスでのパリティ エラー | セカンダリ バスでのパリティ エラー |
---|---|---|---|
ブリッジ 0 | PA ベイ 0(I/O カード、PCMCIA、インターフェイス) | NPE を交換 | NPE を交換。解決しない場合は I/O カードを交換。解決しない場合はシャーシを交換 |
ブリッジ 1 | PA ベイ 1、3、および 5 | NPE を交換 | NPE を交換解決しない場合はシャーシを交換 |
ブリッジ 2 | PA ベイ 2、4、および 6 | NPE を交換 | NPE を交換。解決しない場合はシャーシを交換 |
ブリッジ番号 | ブリッジの用途 | プライマリ バスでのパリティ エラー | セカンダリ バスでのパリティ エラー |
---|---|---|---|
ブリッジ 4 | ポート アダプタ 1 | NPE を交換。解決しない場合はシャーシを交換 | PA 1 を交換。解決しない場合はシャーシを交換 |
ブリッジ 5 | ポート アダプタ 2 | NPE を交換。解決しない場合はシャーシを交換 | PA 2 を交換。解決しない場合はシャーシを交換 |
ブリッジ 6 | ポート アダプタ 3 | NPE を交換。解決しない場合はシャーシを交換 | PA 3 を交換。解決しない場合はシャーシを交換 |
ブリッジ 7 | ポート アダプタ 4 | NPE を交換。解決しない場合はシャーシを交換 | PA 4 を交換。解決しない場合はシャーシを交換 |
ブリッジ 8 | ポート アダプタ 5 | NPE を交換。解決しない場合はシャーシを交換 | PA 5 を交換。解決しない場合はシャーシを交換 |
ブリッジ 9 | ポート アダプタ 6 | NPE を交換。解決しない場合はシャーシを交換 | PA 6 を交換。解決しない場合はシャーシを交換 |
すべてのコンピュータやネットワーク デバイスと同様に、NPE は、まれに発生するプロセッサ メモリ内のパリティ エラーの影響を受けやすいです。パリティ エラーは、システムのリセットを引き起こします。一時的なシングル イベント アップセット(SEU またはソフト エラー)のこともありますし、ハードウェア障害のために何度も発生(いわゆるハード エラー)することもあります。SEU の詳細は、ネットワーク アベイラビリティの向上に関するページを参照してください。CPU のパリティ エラーは、プロセッサのキャッシュ(L1、L2、あるいは L3 が装着されている場合は L3)にアクセスしているときに CPU がパリティ エラーを検出すると報告されます。
次に、このタイプのエラーの例を 4 つ示します。
Error: SysAD, data cache, fields: data, 1st dword Physical addr(21:3) 0x195BE88, Virtual address is imprecise. Imprecise Data Parity Error Imprecise Data Parity Error
NPE には、ノンブロッキング キャッシュを備えた R7K プロセッサが搭載されています。ノンブロッキング キャッシュの場合は、レジスタにデータをロードする命令を実行したときにこのデータが L1 キャッシュにないと、CPU は下位キャッシュのデータまたは SDRAM のデータをロードします。CPU は、ロード中のデータに依存する別のキャッシュ ミスや別の命令がない限り、それ以降の命令の実行をブロックしません。これにより、プロセッサが大幅に高速化してパフォーマンスが向上する可能性がありますが、不明確なパリティ エラーを引き起こす可能性もあります。不明確なパリティ エラーは、CPU がブロッキングを行わずに情報を読み取り、関連するキャッシュ ラインにパリティ エラーがあったと後から判断する場合に発生します。キャッシュ ラインのロード中に実行されていた命令を R7K プロセッサで特定することはできないため、これを不明確なパリティ エラーと呼びます。
システムがエラー コード訂正(ECC)を使用している場合でも、キャッシュ内のハード エラーによって 64 ビットのデータに複数のエラーが発生すると、パリティ エラーが散発的に発生する可能性があります。
パリティ エラーは、単一ビット値が元の値(0 または 1)から逆の値に変更されたときに発生します。このエラーは、ソフト パリティ エラーまたはハード パリティ エラーのいずれによっても発生します。
ソフト パリティ エラーは、デバイスのメモリが外部から影響を受け、カレント レベルでビットの値が変更されることで発生します。この種の問題は一過性のもので、再発しません。ハード パリティ エラーが発生するのは、メモリの損傷によりビットの値がメモリ自体によって変更された場合です。その場合は、損傷したメモリ領域が使用されるたびに問題が発生します。つまり、問題は数日から 1 週間以内に何度も繰り返される可能性があります。
Error: SysAD, instr cache, fields: data, 1st dword Physical addr(21:3) 0x000000, virtual addr 0x6040BF60, vAddr(14:12) 0x3000 virtual address corresponds to main:text, cache word 0 Low Data High Data Par Low Data High Data Par L1 Data: 0:0xAE620068 0x8C830000 0x00 1:0x50400001 0xAC600004 0x01 2:0xAC800000 0x00000000 0x02 3:0x1600000B 0x00000000 0x01 Low Data High Data Par Low Data High Data Par DRAM Data: 0:0xAE620068 0x8C830000 0x00 1:0x50400001 0xAC600004 0x01 2:0xAC800000 0x00000000 0x02 3:0x1600000B 0x00000000 0x01
Cache Err Reg = 0xE4588D10 Data reference, Secondary/Sys intf cache, Data field error Error on 1st doubleword on System interface No errors in addition to instr error Data phy addr that caused last parity or bus error: 0x1E84040C
%CERF-3-RECOVER: PC=0x604F136C, Origin=L3 Data ,PhysAddr=0x013CEFD0
または
%SYS-2-CERF_ABORT: Reason=0xEE23, PC=0x604629C8, Origin=L3 Data, Phys Addr=0x0287A4E8
上記のいずれのメッセージにも、次のような「Cache Error Recovery Function(CERF)レポート」が付属しています。
CERFa[1 ] 05:25:36 MET Tue Jul 9 2002: result=0xEE23; instr_pos=-2; rpl_off=1 CERFb[1 ] PC =604629C8; ORGN=L3 Data; PRID=00002710; PHYA=0287A4E8 CERFc[1 ] SREG=3400E105; CAUS=00000400; DEA0=0287A4E8; ECC =00000000 CERFd[1 ] CERR=E447A4EA; EPC =606361F8; DEA1=02517058; INFO=00000000 CERFe[1 ] CACHE=28FF78B4 62B36D98 02020684 00000E17 00000030 00000001 61F2934C 3EDA025D CERFe[1 ] SDRAM=28FF78B4 62B36D98 02020684 00000E17 00000030 00000001 61F2934C 3EDA025D CERFg[1 ] CXT =00000000; XCXT=00000000; BVAD=00000008; PFCL=00000000 CERFh[1 ] ISeq: 0045182B; 1060000E; 2C4203E9; 92430028; 38420001; 30630005 CERFi[1 ] o0 $3 ....; beq....; sltiu $2 ....; lbu $3, 0x0028($18); xori $2....; andi $3 ....;* CERFj[1 ] ; ; ; 6287A4E8; ; ; CERFk[1 ] ResumptionCode= 0x92430028; 0x0000000F; 0x42000018 CERFl[1 ] Instr's checked=4; diags=0x00000158,0x00040000,3600,1,0 CERFm[1 ] BaseRegLost later/off: 0/0 times; StoredValueLost: 0 times CERFn[1 ] INFO=00000000; CNFG=5061F4BB; ICTL=00000000 Initial Register Values CERFs00[1 ] $0=00000000 AT=61A30000 v0=00000001 v1=00000002 CERFs04[1 ] a0=28FF8728 a1=00003A98 a2=00000000 a3=00000007 CERFs08[1 ] t0=00000000 t1=3400E101 t2=606381E0 t3=FFFF00FF CERFs12[1 ] t4=606381C8 t5=000005D4 t6=00000008 t7=61C50000 CERFs16[1 ] s0=6189C188 s1=00000000 s2=6287A4C0 s3=00003A98 CERFs20[1 ] s4=61BD57B0 s5=00000006 s6=00000000 s7=61BD6C60 CERFs24[1 ] t8=60634788 t9=00000000 k0=621A8374 k1=6063EA40 CERFs28[1 ] gp=61A33B20 sp=61E28678 s8=00000000 ra=60462CA4 1 Cache error exceptions already reported
NPE-300 または NPE-400 で CERF がイネーブルになっている状態でパリティ エラーが発生すると、上記のログが表示されます。CERF の詳細については、次の「解決方法」の項を参照してください。
このようなエラーが発生した場合は、次の一連のアクションを実行することを推奨します。
影響を受けているハードウェアを監視して、同じ問題が再発しないかどうかを確認します。再発しない場合は、一過性のシングル イベント アップセット(SEU)であるため、特に対処する必要はありません。
万一問題が再発した場合は、cache L3 bypass/disable コマンドを使用することで、問題の悪影響を軽減することができます。このコマンドを使用できるのは、次のプラットフォームだけです。
プロセッサ エンジン NPE-300、NPE-400、または NSE-1 を搭載した 7200
プロセッサ エンジン NSE-1 を搭載した 7400
NPE-300 は ECC メモリをサポートしていないため、システム アベイラビリティを向上させ、サービスを中断せずにこれらのパリティ エラーを処理するには、この機能が特に重要です。これにより、多くのソフト パリティ エラーが解決されます。注意しなければならないのは、L3 キャッシュを無効にすると、システムのパフォーマンスにわずかな悪影響が出る点です。パフォーマンスの低下率は、システムの構成に応じて 1 ~ 10 % の間です。このコマンドを使用するための構文は、Cisco IOS ソフトウェアのバージョンによって異なります。
cache L3 disable コマンドは、Cisco IOS ソフトウェア リリース 12.3(5a) 以降で使用できます。また、12.1(22)E でも使用できる予定です。これらのバージョンでは、L3 キャッシュはデフォルトで無効になっているため、何もしなくてもこの機能を使用できます。L3 キャッシュを再度有効にするには、no cache L3 disable コマンドを使用します。
cache L3 bypass コマンドは、Cisco IOS ソフトウェア リリース 12.2(6)S、12.2(6)B、12.2(8)BC1b、12.0(20)SP、12.2(6)PB、12.2(2)DD2、12.0(20)ST3、12.0(21)S、12.1(11)EC、12.2(7)T、12.1(13)、および 12.2(7) 以降と、12.1(11)E ~ 12.1(21)E で使用できます。このコマンドは、デフォルトで無効になっています。
L3 キャッシュのバイパスを有効にするには、設定モードから次のコマンドを入力します。
Router(config)#cache L3 bypass
L3 キャッシュのバイパスを無効にするには、設定モードから次のコマンドを入力します。
Router(config)#no cache L3 bypass
新しいキャッシュ設定は、ルータをリロードしないと適用されません。
ルータのブートアップ時に、L3 キャッシュに関する情報を含むシステム情報が表示されます。これは、startup-config ファイルがまだシステムで処理されていないためです。コンフィギュレーション ファイルに cache L3 bypass コマンドがあれば、startup-config ファイルが処理された後に L3 キャッシュがバイパスされます。
L3 キャッシュの設定を確認するには、show version コマンドを発行します。L3 キャッシュがバイパスされていれば、L3 キャッシュに関する内容は show version の出力に表示されません。
システム アベイラビリティを向上させる別の機能には、Cache Error Recovery Function(CERF)があります。 この機能を有効にすると(最新の Cisco IOS ソフトウェア リリースではデフォルトで有効になっていますが、2004 年 2 月時点では NPE-300 と NPE-400 用でのみデフォルトで有効になっています)、Cisco IOS ソフトウェアによってパリティ エラーの解決が試行され、プロセッサのクラッシュが防止されます。この機能により、特定のタイプのソフト パリティ エラーの約 75 % が解決されます。このコマンドの起動によるパフォーマンスの低下は 5 % 未満です。
NPE-300 用の CERF は、Cisco IOS ソフトウェア リリース 12.1(15)、12.1(12)EC、12.0(22)S、12.2(10)S、12.2(10)T、12.2(10)、12.2(2)XB4、12.2(11)BC1b、および 12.1(5)XM8 以降で使用できます。
NPE-400 用の CERF は、12.3(3)B、12.2(14)S3、12.1(20)E、12.1(19)E1、12.3(1a)、12.2(13)T5、12.2(18)S、12.3(2)T、12.2(18)、12.3(3)、および 12.3(1)B1 以降で使用できます。
NPE-300 用の CERF には、ハードウェア リビジョン 4.1 以降が必要です。ご使用の NPE-300 のハードウェア バージョンを確認するには、show c7200 コマンドを使用します。
Router>show c7200 ... C7206VXR CPU EEPROM: Hardware revision 4.1 Board revision A0 ...
NPE-400 用の CERF には、プロセッサ R7K リビジョン 2.1 以降が必要です。ご使用の NPE-400 のプロセッサ リビジョンを確認するには、show version コマンドを使用します。
Router>show version ... cisco 7206VXR (NPE400) processor with 491520K/32768K bytes of memory. R7000 CPU at 350Mhz, Implementation 39, Rev 3.2, 256KB L2, 4096KB L3 Cache 6 slot VXR midplane, Version 2.1 ...
注:Crashinfoファイルから情報を取得するで説明されているように、エラーの根本原因を特定するために、関連するすべてのcrashinfoファイルを収集することが重要です。
上記の方法で問題が解決せず、パリティ エラーが繰り返し発生する場合は、NPE を交換することで解決する可能性があります。ハード パリティ エラーの原因はハードウェア障害にあるためです。交換するハードウェアは、元の NPE と同じものにします。NPE を交換しても、パリティ エラーがまったく発生しなくなるという保証はありません。メモリを搭載したコンピュータ機器にシングル イベント アップセット(SEU)は付きものだからです。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
13-Apr-2009 |
初版 |