[dpdk-dev] rte_eth_dev_count() returns 0 with ENA device

Michał Krawczyk mk at semihalf.com
Fri Jun 7 12:37:14 CEST 2019


Hi Reeve,

On 07.06.2019 02:21, Reeve Yang wrote:
> some followup ... I debugged more, it looks like rte_pci_probe is not
> happening, so the rte_eth_dev_allocate is not called at all ..., buy
> why is that? I ran testpmd, it shows no probed ethernet device.
 >
> 
> # /opt/bluecoat/sslv/bin/testpmd testpmd -n 2 -l 2-3 -w 0000:00:04.0
> -m 256 -- -i
> EAL: Detected 48 lcore(s)
> EAL: Multi-process socket /var/run/.rte_unix
> EAL: Probing VFIO support...
> testpmd: No probed ethernet devices
> Interactive-mode selected
> ...
> 
> Any help is greatly appreciated
> 
> On Thu, Jun 6, 2019 at 2:26 PM Reeve Yang <reeve.yang at gmail.com> wrote:
>>
>> Hi Gurus,
>>
>> I'm trying to bring VM under Amzaon EC2 R4.16xlarge instance, so the
>> ethernet device is uising Amazon ENA driver. The kernel is 3.10, dpdk
>> is 18.02. All ether device are bound successfully, but for some
>> reason, the DPDK data path cannot be initialized because
>> rte_eth_dev_count() always returns zero. Can someone shed some lights?

On my setup it works fine. I've used 3.13 kernel and DPDK v18.02 and 
r4.18xl. I can probe and attach ENA on 00:04.0.
I was using ami-02699dba41e68180a Ubuntu Server 14.04 LTS. I also 
couldn't reproduce your issue on kernel 4.4, it works fine for me.

rte_eth_dev_count() is returning 1 in my case, because I have 1 ENA 
available.

Could you give more details what AMI are you using?

>> Thanks.
>>
>> I'm pretty sure the VM instance is set up correctly in terms ENA enabled.
>>
>> Below are some  details:
>> # modinfo ena
>> filename:
>> /lib/modules/3.10.0-693.11.6.el7.228052.x86_64/kernel/drivers/net/ethernet/amazon/ena/ena.ko.xz
>> version:        1.0.2
>> license:        GPL
>> description:    Elastic Network Adapter (ENA)
>> author:         Amazon.com, Inc. or its affiliates
>> rhelversion:    7.4
>>
>> # lspci -vt
>> -[0000:00]-+-00.0  Intel Corporation 440FX - 82441FX PMC [Natoma]
>>             +-01.0  Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
>>             +-01.1  Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
>>             +-01.3  Intel Corporation 82371AB/EB/MB PIIX4 ACPI
>>             +-02.0  Cirrus Logic GD 5446
>>             +-03.0  Device 1d0f:ec20
>>             +-04.0  Device 1d0f:ec20
>>             +-05.0  Device 1d0f:ec20
>>             +-06.0  Device 1d0f:ec20
>>             +-07.0  Device 1d0f:ec20
>>             +-08.0  Device 1d0f:ec20
>>             +-09.0  Device 1d0f:ec20
>>             +-0a.0  Device 1d0f:ec20
>>             +-0b.0  Device 1d0f:ec20
>>             \-1f.0  XenSource, Inc. Xen Platform Device
>> # dpdk-devbind.py -s
>>
>> Network devices using DPDK-compatible driver
>> ============================================
>> 0000:00:04.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:05.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:06.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:07.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:08.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:09.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:0a.0 'Device ec20' drv=igb_uio unused=ena
>> 0000:00:0b.0 'Device ec20' drv=igb_uio unused=ena
>>
>> Network devices using kernel driver
>> ===================================
>> 0000:00:03.0 'Device ec20' if=nic0_0 drv=ena unused=igb_uio *Active*

Thanks,
Michal


More information about the dev mailing list