LPFC 驅動程式釋出說明¶
重要
從 8.0.17 版本開始,該驅動程式嚴格針對上游核心。因此,我們移除了針對舊核心(2.6.10 之前)的 #ifdefs。如果驅動程式要在舊核心上執行,則應使用 8.0.16 版本。
針對 FC 遠端埠和擴充套件屬性支援的傳輸層擬議修改,自 2.6.12 版本起已成為上游核心的一部分。我們不再需要為這項支援提供補丁,也不再需要提供支援新舊核心的 *完整* 版本。
該驅動程式現在需要 2.6.12(如果是預釋出版本,則為 2.6.12-rc1)或更高版本的核心。
請注意這些依賴關係....
以下資訊提供了有關該驅動程式歷史的更多背景,因為我們正在爭取上游接受。
線纜拔出和裝置臨時丟失
在 lpfc 驅動程式的早期版本中,驅動程式內部會排隊處理從中層接收到的 I/O。線上纜拔出、鏈路抖動或裝置暫時失去連線(由於其線纜被移除、交換機重啟或裝置重啟)的情況下,驅動程式可以向中層隱藏裝置的消失。向 LLDD 發出的 I/O 會簡單地排隊一小段時間,從而允許裝置重新出現或鏈路恢復,而不會對系統造成意外的副作用。如果驅動程式沒有隱藏這些情況,I/O 將會被驅動程式報錯,中層將耗盡其重試次數,並且裝置將離線。需要手動干預才能重新啟用裝置。
支援 kernel.org 的社群推動了一項工作,以從所有 LLDD 中移除內部排隊。其理念是,由於塊層已經執行排隊,因此內部排隊是不必要的。從 LLDD 中移除佇列使 LLDD 更具可預測性且更簡單。
作為 kernel.org 的潛在新成員,8.x 驅動程式被要求移除所有內部排隊。Emulex 遵循了這一要求。在解釋這一變化的影響時,Emulex 與社群合作修改了 SCSI 中層的行為,以便在傳輸事件(如所述)發生時,SCSI 裝置可以暫時掛起。
提議的補丁已釋出到 linux-scsi 郵件列表。該補丁包含在 2.6.10-rc2(及更高版本)的補丁包中。因此,該補丁是標準 2.6.10 核心的一部分。
預設情況下,驅動程式期望核心中存在用於塊/解塊介面的補丁。無需設定任何 #define 來啟用支援。
核心支援¶
此原始碼包僅針對上游核心。(請參閱檔案頂部的說明)。它依賴於正在緩慢遷移到 kernel.org 核心中的介面。
目前,該驅動程式需要 2.6.12(如果是預釋出版本,則為 2.6.12-rc1)核心。
如果需要用於舊核心的驅動程式,請使用 8.0.16 驅動程式原始碼。
補丁¶
幸運的是,目前不需要補丁。