[dpdk-users] Issue with i40e on X710: rte_eth_dev_count returns 0, i40e_aq_get_phy_capabilities returns I40E_ERR_UNKNOWN_PHY

jonathan.ribas at fraudbuster.mobi jonathan.ribas at fraudbuster.mobi
Wed Jul 12 15:50:58 CEST 2017


Hi all,

We got a bunch of X710 NIC and cant use them with our custom app.
As the topic says, rte_eth_dev_count returns 0. And after a quick
investigation with testpmd, we saw that i40e_aq_get_phy_capabilities
returns 'I40E_ERR_UNKNOWN_PHY'.

The tests are performed on a Xeon server with double numa on a
Debian/jessie. Both 16.11.2 and 17.05.1 versions of DPDK were tested.
The SFP useds are Intel FTLX1471D3BCV-IT.

Here are the logs of dpdk-devbind:
> Network devices using DPDK-compatible driver
> ============================================
> 0000:06:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:06:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:81:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:81:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:82:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:82:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:83:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:83:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:84:00.0 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=
> 0000:84:00.1 'Ethernet Controller X710 for 10GbE SFP+' drv=igb_uio unused=

We init EAL with these params:
> dpiscan: DPDK: EAL parameter argv[0] ./scanner_dpdk
> dpiscan: DPDK: EAL parameter argv[1] -c
> dpiscan: DPDK: EAL parameter argv[2] 0x155555555555
> dpiscan: DPDK: EAL parameter argv[3] -n
> dpiscan: DPDK: EAL parameter argv[4] 1
> dpiscan: DPDK: EAL parameter argv[5] --proc-type
> dpiscan: DPDK: EAL parameter argv[6] auto
> dpiscan: DPDK: EAL parameter argv[7] --file-prefix
> dpiscan: DPDK: EAL parameter argv[8] numa0_
> dpiscan: DPDK: EAL parameter argv[9] --socket-mem=4096,0

Testpmd output:
> EAL: Detected 48 lcore(s)
> EAL: Probing VFIO support...
> EAL: PCI device 0000:06:00.0 on NUMA socket 0
> EAL:   probe driver: 8086:1572 net_i40e
> DEBUG : i40e_aq_get_phy_capabilities returned status = -7 (I40E_ERR_UNKNOWN_PHY)
> eth_i40e_dev_init(): Failed to sync phy type: -95 (EOPNOTSUPP)
> EAL: Requested device 0000:06:00.0 cannot be used
> EAL: PCI device 0000:06:00.1 on NUMA socket 0
> EAL:   probe driver: 8086:1572 net_i40e
> DEBUG : i40e_aq_get_phy_capabilities returned status = -7
> eth_i40e_dev_init(): Failed to sync phy type: -95
> EAL: Requested device 0000:06:00.1 cannot be used
> [...]
> EAL: No probed ethernet devices

Some demsg logs:
> [433223.132343] igb_uio 0000:06:00.0: irq 152 for MSI/MSI-X
> [433223.132617] igb_uio 0000:06:00.0: uio device registered with irq 98
> [433223.132632] igb_uio 0000:06:00.0: mapping 1K dma=0x103e0a5000 host=ffff88103e0a5000
> [433223.132636] igb_uio 0000:06:00.0: unmapping 1K dma=0x103e0a5000 host=ffff88103e0a5000

We searched clues on internet, find [1] but did not help, then
came to the IRC channel, where Christian Ehrhardt point us to [2].

We are still making tests, but for sure, if we plug a port to another
upped link, testpmd succeed to detect the port (nevertheless, on our
app rte_eth_dev_count still returns 0).

So, we assume that our issue is related to [2].

Any help will be welcome. :)

Thanks in advance,

[1] : http://dpdk.org/doc/guides/nics/i40e.html
[2] : [dpdk-dev] i40e_aq_get_phy_capabilities() fails when using SFP+
       with no link
       http://dpdk.org/ml/archives/dev/2017-January/055617.html


Jonathan.


More information about the users mailing list