SCSI 事件報告

節點可以將已發出之 SCSI 指令的事件告知主機。

SCSI 狀態

某些事件涉及 SCSI 架構,並且是由主機應用程式或裝置驅動程式處理,而不會報告事件。某些事件(例如,讀取和寫入 I/O 事件,以及與節點遺失或無法存取後端裝置相關聯的事件)會導致應用程式 I/O 失敗。為了協助對這些事件進行疑難排解,SCSI 指令會傳回 Check Condition 狀態,而且感應資訊會隨附 32 位元事件 ID。此 ID 相關於事件日誌中的特定事件。

如果主機應用程式或裝置驅動程式擷取並儲存此資訊,您可以讓應用程式失敗相關於事件日誌。

此表格說明節點傳回的 SCSI 狀態和代碼。

表 1. SCSI 狀態
狀態 代碼 說明
良好 00h 指令成功。
檢查條件 02h 指令失敗,有感應資料可用。
符合條件 04h N/A
忙碌 08h 「自動緊急應變通報」狀況存在,指令指定 NACA=0。
中間 10h N/A
中間 - 符合條件 14h N/A
保留衝突 18h 依 SPC2 和 SAM-2 的規定傳回,保留或持續保留狀況存在。
作業集已滿 28h 起始器在這個埠上至少有一項作業排在該 LUN 的佇列中。
ACA 作用中 30h 依 SAM-2 的規定而報告此代碼。
作業中斷 40h 如果在控制模式頁面 0Ch 中設定 TAS,則會傳回此代碼。節點的預設值為 TAS=0,無法變更;因此,節點不會報告此狀態。

SCSI 感應

節點會將 SCSI 指令的事件告知主機。此表格定義節點傳回的 SCSI 感應鍵、代碼和限定元。

表 2. SCSI 感應鍵、代碼和限定元
代碼 限定元 定義 說明
2h 04h 01h 未備妥。邏輯單元正逐漸變成備妥狀態。 節點看不到系統,無法執行 I/O 作業。其他感應沒有相關資訊。
2h 04h 0Ch 未備妥。目標埠處於無法使用的狀態。 可能有下列情況:
  • 節點看不到系統,無法執行 I/O 作業。其他感應沒有相關資訊。
  • 節點正在與系統聯絡,但由於無法連接到後端控制器或某些演算法問題,無法對指定的邏輯單元執行 I/O 作業。離線磁區會傳回此感應。
3h 00h 00h 媒體事件 只有讀取或寫入 I/O 才會傳回此事件。I/O 在其範圍內的特定 LBA 上發生事件。感應資料內報告事件的位置。其他感應還包含原因碼,讓事件相關於對應的事件日誌項目。例如,RAID 控制器事件或移轉的媒體事件。
4h 08h 00h 硬體事件。指令對邏輯單元的通訊失敗。 I/O 發生的事件與 RAID 控制器所傳回的 I/O 事件相關聯。其他感應包含的原因碼指向控制器所傳回的感應資料。只有 I/O 類型的指令才會傳回此事件。處於「已備妥」和「準備中」狀態的 FlashCopy® 目標磁區也會傳回此事件。
5h 25h 00h 要求無效。不支援邏輯單元。 邏輯單元不存在或未對映至指令的傳送端。

原因碼

原因碼出現在感應資料的位元組 20-23。原因碼為節點提供特定的日誌項目。該欄位是一個 32 位元不帶正負號的數字,從最高有效位元組開始顯示。此表格列出原因碼及其定義。

如果原因碼未列出,則代碼是指事件日誌中的特定事件,該事件對應於相關事件日誌項目的序號。

表 3. 原因碼
原因碼(十進位) 說明
40 資源是已停止的 FlashCopy 對映的一部分。
50 資源是 Metro Mirror 或 Global Mirror 關係的一部分,且次要 LUN 已離線。
51 資源是 Metro Mirror 或 Global Mirror 的一部分,且次要 LUN 是唯讀。
60 節點離線。
71 資源未連結到任何網域。
72 資源連結到已重建的網域。
73 執行作業的節點因故退出,但並非離線的任何路徑所造成。
80 等待修復完成或刪除磁區。
81 等待驗證完成或刪除磁區。
82 離線的精簡供應磁區導致資料被釘選在目錄快取中。其他精簡供應磁區無法達到足夠的效能,已離線。
85 由於對仲裁磁碟進行檢查點檢查作業失敗,磁區已離線。
86 repairvdiskcopy -medium 指令因為副本不同而產生虛擬媒體錯誤。
93 離線的 RAID-5 或 RAID-6 陣列導致正在寫入的資料被釘選。其他陣列無法達到良好的效能,已離線。
94 由於對仲裁磁碟進行檢查點檢查作業失敗,屬於磁區的陣列 MDisk 已離線。
95 MDisk 錯誤區塊傾出檔中使用此原因碼,表示資料遺失是因為必須與重建分段重新同步化同位檢查,或由於多個失敗而導致的一些其他 RAID 演算法原因。
96 由於內部 meta 資料表已滿,屬於磁區的 RAID-6 陣列 MDisk 已離線。