目錄

簡介

必要條件

需求

採用元件

問題

解決方案

簡介

本文描述如何對npumgr重新啟動進行故障排除，該重新啟動是由聚合服務路由器5500(ASR5500)中的EZprmSER_CheckError觸發的。

必要條件

需求

思科建議您瞭解以下主題：

- ASR5500的硬體知識

- StarOS

採用元件

本文件所述內容不限於特定軟體和硬體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

問題

檢測到網路處理單元(NPU)記憶體錯誤後，可能會使用此簽名導致NPUMGR分段故障。

Fatal Signal 11: Segmentation fault

PC: [0d8e2647/X] EZprmSER_CheckError()

Faulty address: 0x272e95d4

Signal from: kernel

Signal detail: address not mapped to object

Process: card=7 cpu=1 arch=X pid=16579 argv0=npumgr

Crash time: 2017-Oct-03+01:02:32 UTC

Recent errno: 115 Operation now in progress

Build_number: 67999

Stack (22120@0x0xffc3a000):

[0d8e2647/X] EZprmSER_CheckError() sp=0xffc3aaf0

[0d78c348/X] EZapiPrm_SERCheckError() sp=0xffc3ab14

[004f4ba5/X] aresEZevents_MemSErr_Handler() sp=0xffc3ad94

[004f688b/X] aresEZevents_Handler() sp=0xffc3f104

[0d77206c/X] EZdev_ISRTask() sp=0xffc3f138

[0c25eb02/X] sn_loop_run() sp=0xffc3f5e8

[0bf451c5/X] main() sp=0xffc3f658

在資料處理卡(DPC)和管理輸入/輸出(MIO)卡上都可以看到此重新啟動。

導致重新啟動的事件可總結如下：

- 在NPU上檢測到記憶體錯誤（單位ECC錯誤）。

- NPU中斷npumgr驅動程式，因為檢測到記憶體錯誤。

- Npumgr嘗試掃描記憶體中是否存在錯誤，然後從npumdriver代碼重新啟動。

每當在卡的NPU上發現奇偶校驗（或記憶體）錯誤時，NPU都將重新啟動 — 這類似於npumgr任務重新啟動時的節點反應。由於重新啟動的觸發是已知的NPU中斷引起的記憶體錯誤，因此此重新啟動被視為瞬態硬體錯誤。

請注意，宇宙射線或靜電放電可能導致記憶體中發生位翻轉，這就是ECC要糾正的問題。

如果其中一塊卡出現一個ECC錯誤，這實際上是一個預期的事件。

如果一個卡在一個月內出現多個ECC錯誤，則懷疑卡有硬體問題。

解決方案

思科建議監視該卡，如果一個月內卡上出現類似問題，請重新安裝。

執行資料收集以調試此分段故障時，在NPU上執行記憶體錯誤恢復的快速NPU重新啟動期間觸發該事件。

思科錯誤ID CSCvu44031正在修復分段故障。