在极少数情况下,系统首次通电时,通向板载以太网设备的 PCI-Express (PCIE) 链路可能会训练出低于最佳速度的速度。这不会导致任何连接或服务损失,但可能会导致网络带宽或吞吐量损失。只有为机箱接通交流电时才会出现此问题。如果链路显示正确的速度,则只要一直通交流电,链路就会保持正确的速度。
查明错误情况
要解决此问题,您必须确定板载网络训练出的速度是否达不到全速,如果有任何链路训练出的速度低于其全部潜能,必须对其进行重新训练。使用以下方法之一查明您的系统是否存在此错误情况;这两种方法都可以从控制域中的 Solaris 运行。
选项 1:FMA 故障日志
当且仅当您在引导期间运行了开机自检 (power-on self-test, POST) 时,才会在 FMA 日志中记录降级链路的故障。
显示诊断出的故障的列表。
# fmadm faulty -------------------------------------------------------------------------------------- TIME EVENT-ID MSG-ID SEVERITY -------------------------------------------------------------------------------------- Sep 14 06:21:49 33055e24-2f39-679e-9482-ec1c5f83b69b SPSUN4V-8001-0J Major Problem Status:open Diag Engine : fdd / 1.0 System Manufacturer : Oracle Corporation Name : SPARC T8-1 Part_Number : 32884356+1+1 Serial_Number : AK00271486 Host_ID : 86bbdd30 ---------------------------------------- Suspect 1 of 1 : Problem class : fault.io.pciex.bus-linkerr-deg Certainty : 100% Affects : location:////SYS/MB/NET2 Status : faulted but still in service FRU Status : faulty Location : "/SYS/MB" ... Resource Location : "/SYS/MB/NET2"
在以下所有位置中查找 "Problem class" 设置为 "fault.io.pciex.bus-linkerr-deg" 的任何故障。以上示例在 /SYS/MB/NET2 中显示了此故障。
/SYS/MB/NET0
/SYS/MB/NET1
/SYS/MB/NET2
/SYS/MB/NET3
/SYS/MB/IOH/IOS2/RP0/PCIE_LINK
如果在任一位置中看到了 fault.io.pciex.bus-linkerr-deg,则表明板载网络的 PCI-E 链路没有训练出其全部潜能。
记录每个 fault.io.pciex.bus-linkerr-deg 故障的 EVENT-ID 下列出的值。稍后您将使用这些 EVENT-ID 来清除故障。
在以上示例中,此值为 33055e24-2f39-679e-9482-ec1c5f83b69b。
选项 2:prtdiag(1M) 命令
无论是否启用了 POST,都可以登录到主域从 Solaris 中运行 prtdiag(1M) 命令。
在 Solaris 控制域中,显示板载以太网设备的 PCI-E 带宽和速度。在本例中,板载以太网设备的网络端口命名为 /SYS/MB/XGBE、/SYS/MB/NET1、/SYS/MB/NET2 和 /SYS/MB/NET3。
# prtdiag System Configuration: Oracle Corporation sun4v SPARC T8-1 Memory size: 243200 Slot … Cur Speed/Width... /SYS/MB/XGBE PCIE network-pciex8086,1589 8.0GT/x8 8.0GT/x8 /pci@300/pci@1/network@0 /SYS/MB/NET1 PCIE network-pciex8086,1589 8.0GT/x8 8.0GT/x8 /pci@300/pci@1/network@0,1 /SYS/MB/NET2 PCIE network-pciex8086,1589 8.0GT/x8 8.0GT/x8 /pci@300/pci@1/network@0,2 /SYS/MB/NET3 PCIE network-pciex8086,1589 8.0GT/x8 8.0GT/x8
重新训练未达最优性能的链路
如果上述任一方法表明链路训练出的设置低于最优性能,请按如下所述重新训练它们。
在机箱上暂停所有来宾。
关闭主机电源。
在机箱上将交流电源切断几秒钟。
使用 fmadm repair uuid-of-fault 命令和您为 uuid 记录的 EVENT-ID 来修复故障。
如上例中所示,/SYS/MB/NET2 的 EVENT-ID 是 33055e24-2f39-679e-9482-ec1c5f83b69b。在本例中,按如下所述来清除故障:
# fmadm repair 33055e24-2f39-679e-9482-ec1c5f83b69b