[dpdk-dev] unable to bind to vfio-pci

Burakov, Anatoly anatoly.burakov at intel.com
Thu Sep 17 13:49:59 CEST 2020


On 17-Sep-20 11:22 AM, Bruce Richardson wrote:
> On Thu, Sep 17, 2020 at 02:21:27PM +0500, Sarosh Arif wrote:
>> On Thu, Sep 17, 2020 at 2:17 PM Bruce Richardson
>> <bruce.richardson at intel.com> wrote:
>>>
>>> On Thu, Sep 17, 2020 at 11:52:58AM +0500, Sarosh Arif wrote:
>>>> I have been trying to bind to vfio-pci using usertools/dpdk-devbind.py
>>>> but am unable to do so. The reason behind this is that I am unable to
>>>> write in /sys/bus/pci/drivers/vfio-pci/bind. Upon searching solutions
>>>> I tried a couple of things such as setting iommu=pt and intel_iommu=on
>>>> and ensured vt-d is enabled.
>>>> Along with this I have made sure that the vfio-pci module is correctly
>>>> loaded. I have also tried
>>>>
>>>> chmod 666 /sys/bus/pci/drivers/vfio-pci/bind
>>>>
>>>> So that I have permissions to write in this file.
>>>>
>>>> The error I get when I use usertools/dpdk-devbind.py to bind is this:
>>>> Error: bind failed for 0000:b7:00.1 - Cannot bind to driver vfio-pci
>>>>
>>>> The details of 0000:b7:00.1 are as follows:
>>>> Ethernet Connection X722 for 10GBASE-T 37d2' if=eno6 drv=i40e
>>>>
>>>> I have also unbinded The pci bridge to which 0000:b7:00.1 was connected.
>>>>
>>>> What more can be done to resolve this?
>>>>
>>> Since you describe changing permissions on the "bind" file, are you trying
>>> to run dpdk-devbind.py as a non-root user? Does it work as root?
>> I am running it as a root user. It does not work as a root user.
> 
> One possible problem that it could be, is that you will need to ensure that
> any other ports on the same device are either similarly bound to vfio-pci
> or not bound to any driver. You can't have e.g. a 2-port X722 NIC where one
> port is bound to the kernel driver, while another is bound to vfio in
> userspace.
> 

I don't think this would result in a bind error; rather, you'd see the 
IOMMU group as non-viable when attempting to use it with VFIO, but the 
binding itself should succeed.

-- 
Thanks,
Anatoly


More information about the dev mailing list