LSI SAS2116 的問題 - 在 Fedora 32 核心 5.8 上未檢測到驅動器。*
上週我使用正常的 DNF 更新過程更新了我的核心。重新啟動時,未檢測到我的 mdadm 陣列中的任何驅動器。我將問題縮小到核心問題,並使用較舊的核心進行引導。我等了一周的下一次核心更新並再次執行該過程,希望它只是一個壞核心,但問題還沒有解決。Dmesg 顯示
kernel: mpt2sas_cm0: failure at drivers/scsi/mpt3sas/mpt3sas_scsih.c:10790/_scsih_probe()!
在兩個 5.8 核心上。經過一番研究,我很確定 Fedora 已經放棄了對 sas2116 控制器的支持(https://access.redhat.com/discussions/3722151?page=2),所以我要麼需要找到這張卡的驅動程序,要麼更換它帶 12gb/s 卡。你有什麼建議?我在哪裡可以找到適用於 Fedora 32 的這張卡的驅動程序以及如何安裝它們,或者用什麼好的 12gb/s 卡來替換它(該卡目前驅動安裝了 12 個驅動器的 24 托架超微型背板)?我目前使用的卡是 LSI 9201-16e。
該問題與較新的 Broadcom/LSI 三模式卡的驅動程序如何為最新驅動程序中非常高的 32455 預設隊列深度分配大量 DMA 記憶體有關。這對於這些舊卡來說是有問題的,因為它們使用相同的驅動程序,但如果原始 DMA 請求未完全分配,則不執行釋放所有 DMA 隊列然後在 32 位邊界上重新請求的邏輯。要解決此問題,您可以設置核心參數以將隊列深度降低到 10000:
grubby --update-kernel=ALL --args="mpt3sas.max_queue_depth=10000"
您可以在此處找到更多詳細資訊:https ://bugzilla.kernel.org/show_bug.cgi?id=209177