x520丢失SR-IOV
本帖最后由 21PENNY 于 2023-7-19 17:32 编辑捡了一张联想x520,刚开始在12600k+z690上测试VFs完全正常,三天后插到5900x+x570平台,ARI capability和SR-IOV capability都丢失了,自然无法创建VFs了;再把这张x520插回12600k+z690,依然没有ARI capability和SR-IOV capability。
用Intel BootUtil刷了BootIMG.FLB依然没有用。
求教有没有哪位朋友遇到过类似问题。
把后面的解决方法置顶了,网卡遇到类似问题的朋友可以参考下。
在ubuntu 18.04中通过使用eeupdate64e在linux上把HP 560SFP+(也就是HP的x520 da2)的eeprom刷到这张联想x520-da2上解决了此问题(ethtool -i看是从0x800004e0刷到了0x800006fc),我不知道我做了什么让eeprom不太正常,但是这种勉强算掉固件的事其实也算是比较常见了。
eeupdate64e下载链接,shell下的efi和DOS下的exe比较容易找到,这里不列出了
https://platinasystems.com/downloads/tools/
(1)在解决问题的过程中,回顾了一下E810对PASID capability的支持是靠eeprom(定义网卡的PCI/PCIe配置空间、MAC地址等信息)而不是ddp package(网卡的片上OS)。
补充:我看外网论坛有人说现代网卡的固件是驱动自己去加载的,对8125和AX200是成立的,对x520、x540这种显然不成立(当然这些卡确实也很老了),对x710和E810只能算部分成立。
(2)以及dell售后问答中对于i350支持SR-IOV的解释提到SR-IOV capability应该是靠eeprom定义的;又看了下ixgbe的驱动,发现只是会向eeprom的mailbox里写了点东西,其它都是从eeprom里读东西。那么接下来就是开始想办法刷固件。
(3)这里首先走到了一个坑里,搜intel x520 firmware update或82599es firmware update,给出的工具主要是BootUtil和BootIMG.FLG,看名字都感觉不太对,搜lenovo x520 firmware update,联想官网给出的工具也是这个,这实际上是用来更新option rom的,网卡的UEFI、Legacy、PXE、WOL等功能。
(4)继续搜能找到dell的工具,但是它是集成工具,没有提供单独的eeprom文件。
(5)这时想的是再买一个网卡回来用eeupdate64e或ethtool把eeprom给dump出来(intel网卡驱动的eeprom_ops写的很完整),然后在黄鱼买了一张HP 560SPF+,网卡已经寄出的时候,搜了下这张卡的eeprom,结果居然信息非常丰富,链接如下:
https://support.hpe.com/connect/s/product?language=zh_CN&kmpmoid=5357560&tab=driversAndSoftware
windows和linux的版本都有,点进去之后可以找到许多网卡不同版本的固件,包含eeprom,nvm,OROM
https://support.hpe.com/connect/s/softwaredetails?language=zh_CN&softwareId=MTX_c713d5a47a804bedb30a1d4135
把联想x520-da2的eeprom dump出来比对一下,除了制造商信息的字符串之外,差别有,但不是很大,不考虑尾的checksum部分,肯定有哪里是决定了ARI和SR-IOV capability的。
这里接下来有两个思路:
(1)用ethtool -E把不同的部分都改成和HP_562i_LOM_82599_2P_SFP_4.25_0.54_800006FC相一致
(2)做好当前EEPROM的备份(建议用eeupdate64e备份成EEP格式),把HP_562i_LOM_82599_2P_SFP_4.25_0.54_800006FC刷进去
直接用(2)
sudo ./eeupdate64e -nic=1 -d HP_562i_LOM_82599_2P_SFP_4.25_0.54_800006FC.txt
sudo ./eeupdate64e -nic=2 -d HP_562i_LOM_82599_2P_SFP_4.25_0.54_800006FC.txt
(HP提供的固件rpm包,解压出来之后找到这个带有82599的txt文件,这个就是EEP格式文件,EEP格式是明文字符串,不是raw的二进制bin,其实刷一个也可以,两个port是共用的eeprom)。
重启,在dmesg中能看到VFs分配资源,在lspci -s xx:xx.x -vvvv中看到ARI和SR-IOV capability,在/sys/bus/pci/devices/xxxx:xx:xx.x/中能创建vf就成功了(PVE Web UI中能创建)。
我的x520在AIO主机里esxi6.7下就没成功开启过SR-IOV rdlrdlrdl321 发表于 2023-7-14 19:35
我的x520在AIO主机里esxi6.7下就没成功开启过SR-IOV
我在esxi7、esxi8下面也都没有成功过,都是提示需要重启,但反复重启,也还是出现这个提示。按网上说的修改那个check参数也不起作用。是不是还需要cpu和主板支持才能开启sr-iov? 雨季不再来 发表于 2023-7-15 10:03
我在esxi7、esxi8下面也都没有成功过,都是提示需要重启,但反复重启,也还是出现这个提示。按网上说的修 ...
BIOS里要开启SR-IOV CPU要支持VT-D BIOS里X520应该有设置选项,还要启用SR-IOV并且设置最大虚拟网卡数量,默认是1或者0,最后部分主板还要插在和CPU直通的PCIE插槽上才行,走南桥的不一定能成功,看主板兼容性 本帖最后由 天道太酬勤 于 2023-7-15 16:05 编辑
除了网卡就没改过其他的了?不过我这边SR-IOV在Linux下表现很棒,在Windows下表现很差,都想换回VirtIO了,不知道有大佬指点一下没 fyc858 发表于 2023-7-15 10:07
BIOS里要开启SR-IOV CPU要支持VT-D BIOS里X520应该有设置选项,还要启用SR-IOV并且设置最大虚拟网卡数量 ...
cpu支持vt-d,bios里面没有sr-iov
选项,网卡插在显卡插槽的。 天道太酬勤 发表于 2023-7-15 16:02
除了网卡就没改过其他的了?不过我这边SR-IOV在Linux下表现很棒,在Windows下表现很差,都想换回VirtIO了, ...
是的,仅仅换了个平台,SR-IOV和ARI在PCIe配置空间里就消失了,周末在外网论坛搜到一个情况,他的x520 port1对应PF的SR-IOV完全正常,port2对应的PF也是SR-IOV消失了,两个port的eeprom完全一致。 雨季不再来 发表于 2023-7-15 17:50
cpu支持vt-d,bios里面没有sr-iov
选项,网卡插在显卡插槽的。
你哪家的主板? LambdaDelta 发表于 2023-7-18 10:14
你哪家的主板?
屏蔽家的B560M ELITE 雨季不再来 发表于 2023-7-18 10:16
屏蔽家的B560M ELITE
屏蔽家那没事了,sriov就别想了。
安心换个华硕,华擎啥的 直通和sr-iov 有什么区别啊 我用的是直通 LambdaDelta 发表于 2023-7-18 10:24
屏蔽家那没事了,sriov就别想了。
安心换个华硕,华擎啥的
哦,这样啊,明白了。 wun_008 发表于 2023-7-18 10:39
直通和sr-iov 有什么区别啊 我用的是直通
直通是整个port透传到虚拟机,SR-IOV是硬件层面把port切分成若干份(主要是靠网卡内的vSwitch),这样一个port的带宽就能被若干台虚拟机共享,效率比虚拟 or 半虚拟网卡高。 21PENNY 发表于 2023-7-18 10:52
直通是整个port透传到虚拟机,SR-IOV是硬件层面把port切分成若干份(主要是靠网卡内的vSwitch),这样一 ...
原来如此 切成好多虚拟网卡吧 ESXi SR-IOV License 要Enterprise Plus吧? fyc858 发表于 2023-7-15 10:07
BIOS里要开启SR-IOV CPU要支持VT-D BIOS里X520应该有设置选项,还要启用SR-IOV并且设置最大虚拟网卡数量 ...
我就是插在南桥上的PCIE插槽,怎么搞都不成功,BIOS里也看不到SR-IOV的选项。 本帖最后由 shahiyuan 于 2023-9-14 02:10 编辑
21PENNY 发表于 2023-7-19 17:15
在ubuntu 18.04中通过使用eeupdate64e在linux上把HP 560SFP+(也就是HP的x520 da2)的eeprom刷到这张联想x5 ...
联想的是公版卡?
刷完指示灯颜色正常吗?理论上刷完有点小问题,公版卡颜色是绿色,hpe的是橘色,有概率不开机都会亮灯。 天道太酬勤 发表于 2023-7-15 16:02
除了网卡就没改过其他的了?不过我这边SR-IOV在Linux下表现很棒,在Windows下表现很差,都想换回VirtIO了, ...
用Intel Bootutil刷一下官方最新BootIMG.FLB试试。在官网下载固件包,都在里面。
x520这些卡最早有12年的,卖家一般不更新固件的,好多都是出厂时的,建议可以刷一下。
有条件有一定动手能力的顺便找到相应的eeprom升级一下,应该能解决问题。 本帖最后由 21PENNY 于 2023-9-15 01:38 编辑
shahiyuan 发表于 2023-9-14 02:20
用Intel Bootutil刷一下官方最新BootIMG.FLB试试。在官网下载固件包,都在里面。
x520这些卡最早有12年的 ...
BootIMG是刷OPROM并且可以切换oprom的启动方式 shahiyuan 发表于 2023-9-14 02:08
联想的是公版卡?
刷完指示灯颜色正常吗?理论上刷完有点小问题,公版卡颜色是绿色,hpe的是橘色,有概率 ...
联想的PCB不是公版,惠普和intel公版基本一致;我用的时候刷完没有任何问题,HPE的固件多一个温度上报,联想刷上之后这个温度上一直是0,其它功能一切正常。 21PENNY 发表于 2023-9-15 01:33
BootIMG是刷OPROM并且可以切换oprom的启动方式
我理解bootimg是固件,而eeprom类似主板的bios
bootutil在升级时输入命令就可以改变网卡的启动模式,PXE在启动时很烦,我改成了UEFI启动,清爽
我手中大把品牌X520的eeprom.eep,还有部分x710的 21PENNY 发表于 2023-9-15 01:37
联想的PCB不是公版,惠普和intel公版基本一致;我用的时候刷完没有任何问题,HPE的固件多一个温度上报, ...
惠普和intel公版的eep相差蛮大,dell和hp的版型看起来和公版差不多,但是eep不通用,会有小问题。而且他们各自在eep里面设置了品牌检验代码 本帖最后由 21PENNY 于 2023-9-15 10:22 编辑
shahiyuan 发表于 2023-9-15 02:49
我理解bootimg是固件,而eeprom类似主板的bios
bootutil在升级时输入命令就可以改变网卡的启动模式,PXE ...
我以前也是这样理解的,后来我觉得OPROM就是OPROM只是跟PCIe设备的boot过程有关,只是固件的一部分,而eeprom可以确定网卡的PCIe capability,是固件中最重要的部分。https://www.intel.com/content/dam/support/us/en/documents/network-and-i-o/ethernet-products/bootutil.txt
后来的x710和E810又增加了ddp package跑一个片上OS能够支持更加复杂的功能,同时又给eeprom增加了NVM Update Tool接口可以开关某些capability(比如E810的pasid capability)以及配置某些功能。 本帖最后由 21PENNY 于 2023-9-15 10:24 编辑
shahiyuan 发表于 2023-9-15 02:53
惠普和intel公版的eep相差蛮大,dell和hp的版型看起来和公版差不多,但是eep不通用,会有小问题。而且他 ...
你说的有道理,看来我是运气好,恰好惠普的固件在联想上也可以使用(这一个多月每天都SR-IOV的iperf3和iperf测试,目前没有什么问题)。
可以看配置空间的Vital Product Data这一栏:
2d:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01)
Subsystem: Hewlett-Packard Company Ethernet 10Gb 2-port 562i Adapter
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 80
IOMMU group: 26
Region 0: Memory at fcb00000 (32-bit, non-prefetchable)
Region 2: I/O ports at f020
Region 3: Memory at fcd04000 (32-bit, non-prefetchable)
Expansion ROM at fcc80000
Capabilities: Power Management version 3
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
Capabilities: MSI: Enable- Count=1/1 Maskable+ 64bit+
Address: 0000000000000000Data: 0000
Masking: 00000000Pending: 00000000
Capabilities: MSI-X: Enable+ Count=64 Masked-
Vector table: BAR=3 offset=00000000
PBA: BAR=3 offset=00002000
Capabilities: Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0.000W
DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
MaxPayload 512 bytes, MaxReadReq 512 bytes
DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Exit Latency L0s unlimited
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s (ok), Width x8 (ok)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR-
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: Vital Product Data
Product Name: HP Ethernet 10Gb 2-port 562i Adapter
Read-only fields:
Part number: N/A
Engineering changes: N/A
Serial number: N/A
Vendor specific: 11W/8W PCIeG2x8 2p 10Gb SFP+ Intel 82599
Reserved: checksum good, 0 byte(s) reserved
Read/write fields:
Vendor specific: 3.8.04
Vendor specific: 2.8.20
Vendor specific: 2.3.06
Asset tag: N/A
System specific: xxxxxxxxxxxxxxxx
System specific: xxxxxxxxxxxxxxxx
End
Capabilities: Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Capabilities: Device Serial Number 00-e0-ec-ff-ff-36-9f-44
Capabilities: Alternative Routing-ID Interpretation (ARI)
ARICap: MFVC- ACS-, Next Function: 1
ARICtl: MFVC- ACS-, Function Group: 0
Capabilities: Single Root I/O Virtualization (SR-IOV)
IOVCap: Migration-, Interrupt Message Number: 000
IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy-
IOVSta: Migration-
Initial VFs: 64, Total VFs: 64, Number of VFs: 0, Function Dependency Link: 00
VF offset: 384, stride: 2, Device ID: 10ed
Supported Page Size: 00000553, System Page Size: 00000001
Region 0: Memory at 00000000e2400000 (64-bit, prefetchable)
Region 3: Memory at 00000000e2300000 (64-bit, prefetchable)
VF Migration: offset: 00000000, BIR: 0
Kernel driver in use: ixgbe
Kernel modules: ixgbe
我用的联想x520是长这个样子:https://gw.alicdn.com/imgextra/i2/34609532/O1CN01pNkI152KHi172W7kO_!!34609532.jpg_Q75.jpg_.webp
我还有一张惠普的x520(560SFP+),目前和联想这张固件版本一致,温度上报正常。 本帖最后由 shahiyuan 于 2023-9-15 12:21 编辑
21PENNY 发表于 2023-9-15 10:21
你说的有道理,看来我是运气好,恰好惠普的固件在联想上也可以使用(这一个多月每天都SR-IOV的iperf3和ip ...
哈哈哈哈,这卡我也收藏了一张,晚点备份一下eeprom,发给你
Lenovo 82599es eep点我 shahiyuan 发表于 2023-9-15 12:10
哈哈哈哈,这卡我也收藏了一张,晚点备份一下eeprom,发给你
哈哈,非常感谢 本帖最后由 summerq 于 2023-9-15 22:57 编辑
保持关注,我也有此卡 顺道请教下
MCX4121A-ACAT在ESXI下为啥就8个VF... 我记得spec里有127个 inSeek 发表于 2023-9-15 23:57
顺道请教下
MCX4121A-ACAT在ESXI下为啥就8个VF... 我记得spec里有127个
vf 数量是手动设置的
页:
[1]
2