欢迎来到 DPDK交流社区 ,有什么问题可以尽管在这里提问,您将会收到社区其他成员的回答;也可以将您的总结写在这里,为社区其他成员提供帮助。 (QQ交流群:127163755)

PMD:eth_i40e_dev_init(): failed to sync phy type: -95 [已关闭]

0 投票
EAL: Detected 88 lcore(s)
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:00:19.0 on NUMA socket 0
EAL:   probe driver: 8086:153a net_e1000_em
EAL: PCI device 0000:02:00.0 on NUMA socket 0
EAL:   probe driver: 8086:1528 net_ixgbe
EAL: PCI device 0000:02:00.1 on NUMA socket 0
EAL:   probe driver: 8086:1528 net_ixgbe
EAL: PCI device 0000:08:00.0 on NUMA socket 0
EAL:   probe driver: 8086:1533 net_e1000_igb
EAL: PCI device 0000:81:00.0 on NUMA socket 1
EAL:   probe driver: 8086:1572 net_i40e
EAL:   using IOMMU type 1 (Type 1)
PMD: eth_i40e_dev_init(): FW 5.0 API 1.5 NVM 05.00.05 eetrack 800028ac
PMD: eth_i40e_dev_init(): Failed to sync phy type: -95
EAL: Hotplug doesn't support vfio yet
EAL: Error - exiting with code: 1
  Cause: Requested device 0000:81:00.0 cannot be used
问题关闭原因: 已经解决
最新提问 6月 27 分类:DPDK其他问题 | 用户: copy (190 分)
已关闭 6月 27 用户:copy

1个回答

0 投票
 
已采纳
在配置文件里把相关的DEBUG开关置为y,看看错误的具体信息。有可能是配置的某个特性网卡不支持导致的
最新回答 6月 27 用户: sysight (12,100 分)
采纳于 6月 27 用户:sysight
谢谢,我刚刚找到了答案,这是DPDK的问题,后面的版本已经修复了。

author    David Hunt <david.hunt@intel.com>    2017-07-24 09:48:44 +0100
committer    Ferruh Yigit <ferruh.yigit@intel.com>    2017-07-31 19:58:41 +0200
commit    935bceb9ba0de8a7a276d5b3dd41e0168a273f26 (patch)
tree    9f528fc896d8250f19050513e23cdb6d0d859070
parent    ef09a7fc762073d9980b93bbd6fcf83e6e6b4abf (diff)
download    dpdk-935bceb9ba0de8a7a276d5b3dd41e0168a273f26.zip
dpdk-935bceb9ba0de8a7a276d5b3dd41e0168a273f26.tar.gz
dpdk-935bceb9ba0de8a7a276d5b3dd41e0168a273f26.tar.xz
net/i40e: fix sync phy type by adding retry
Some phy's take longer than others to come up. Add a retry to give
more phy's a chance to come up before returning an error.

Fixes: 2209c3e2c275 ("net/i40e: avoid PCI probing failure when using bogus SFP")

Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Diffstat
-rw-r--r--    drivers/net/i40e/i40e_ethdev.c    12   
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index f3339b5..5f26e24 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -9260,16 +9260,22 @@ i40e_dev_sync_phy_type(struct i40e_hw *hw)
     enum i40e_status_code status;
     struct i40e_aq_get_phy_abilities_resp phy_ab;
     int ret = -ENOTSUP;
+    int retries = 0;
 
     status = i40e_aq_get_phy_capabilities(hw, false, true, &phy_ab,
                           NULL);
 
-    if (status) {
+    while (status) {
         PMD_INIT_LOG(WARNING, "Failed to sync phy type: status=%d",
             status);
-        return ret;
+        retries++;
+        rte_delay_us(100000);
+        if  (retries < 5)
+            status = i40e_aq_get_phy_capabilities(hw, false,
+                    true, &phy_ab, NULL);
+        else
+            return ret;
     }
-
     return 0;
 }
...