Solaris
pkg 更新後 Solaris 主機不再引導:intel_iommu0 生成故障事件
我剛剛對我的 Solaris 11 機器進行了一些定期維護。我發出了一個
pkg update
命令,被告知我需要更新pkg
. 我這樣做了,然後重新啟動到solaris-1
.然後我發布了另一個
pkg update
,它下載並安裝了大約 600MB 的軟體包。但是,在重新啟動solaris-2
時,它無法啟動,說明:SunOS Release 5.11 Version 11.0 64-bit Copyright (c) 1983, 2011, Oracle and/or its affiliates. All rights reserved. NMI received WARNING: intel_iommu0: generated a fault event when translating DMA read on address 0x40000 for PCI(9, 0, 0), the reason is: The Read field in a page-table entry is Clear when DMA read WARNING: cpqary30: domid 3 pte: 0(paddr 0) WARNING: CPQary3 : Smart Array P212 Controller HBA firmware Locked !!! WARNING: CPQary3 :Please reboot the system
然後它會進行核心轉儲並重新啟動。
我嘗試添加
intel-iommu=no
到現有的 grub-B
參數中,以閱讀:-B intel-iommu=no,$ZFS-ARGS
但是,這沒有任何區別。
硬體是帶有 Smart Array P212 控制器的 HP X1600。
這是怎麼回事?
scanpci -v
將 PCI(9,0,0) 顯示為:pci bus 0x0009 cardnum 0x00 function 0x00: vendor 0x103c device 0x323a Hewlett-Packard Company Smart Array G6 controllers CardVendor 0x103c card 0x3241 (Hewlett-Packard Company, Smart Array P212) STATUS 0x0010 COMMAND 0x0047 CLASS 0x01 0x04 0x00 REVISION 0x01 BIST 0x00 HEADER 0x00 LATENCY 0x00 CACHE 0x10 BASE0 0xfbc00000 SIZE 4194304 MEM BASE2 0xfbbf0000 SIZE 4096 MEM BASE4 0x00005000 SIZE 256 I/O BASEROM 0x00000000 addr 0x00000000 MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x05
我似乎已經解決了這個問題。
我在 BIOS 中禁用了 Intel VT-d 和 Intel Virtualization,現在似乎一切正常。