[dpdk-users] Correct setup of sfc

Andrew Rybchenko arybchenko at solarflare.com
Fri Jun 15 11:44:55 CEST 2018


On 06/13/2018 10:14 PM, Filip Janiszewski wrote:
> Hi Andrew,
>
>
>> PCI devices of Solarflare NIC should be bound to vfio, uio-pci-generic or
>> igb_uio (part of DPDK) module. In the case of Solarflare NICs, Linux
>> driver is
>> not required and not used in DPDK.
>>
>> So, you should load one of above modules (depending on your server
>> IOMMU configuration), push already created interfaces down and rebind
>> Solarflare PCI functions to the driver, something like:
>>
>> modprobe vfio-pci
>> ip link set enp101s0f0 down
>> ip link set enp101s0f1 down
>> dpdk-devbind.py --bind=vfio-pci 0000:65:00.0 0000:65:00.1
>>
>> The above assumes that dpdk-devbind.py script is in PATH.
>> And start DPDK as you do before.
>>
> For some reason vfio-pci is refusing to bind the device:
>
> .
> root usertools : ./dpdk-devbind.py --bind=vfio_pci 0000:65:00.0 0000:65:00.1
> Error: bind failed for 0000:65:00.0 - Cannot open
> /sys/bus/pci/drivers/vfio_pci/bind
> Error: bind failed for 0000:65:00.1 - Cannot open
> /sys/bus/pci/drivers/vfio_pci/bind
> .
>
> also:
>
> .
> root usertools : echo 0000:65:00.0 > /sys/bus/pci/drivers/vfio-pci/bind
> bash: echo: write error: No such device
> .
>
> In the kernel command line I've included 'iommu=pt intel_iommu=on', but
> still not working. Well I guess this is not a DPDK issue anymore.

What does the following command shows?
./dpdk-devbind.py --status-dev net

Is IOMMU (VT-d) enabled in BIOS/UEFI? You can check for files/symlinks 
in /sys/class/iommu.

As an experiment I'd try uio-pci-generic as well.
Also exact error logs from dmesg could be useful to understand what's 
going on.

Andrew.


More information about the users mailing list