On Mon, Jan 25, 2016 at 06:17:23PM +0530, Nagaraj Trivedi wrote: > Hi all, in the Getting Started Guide for Linux, Release 2.2.0 it is > mentioned that we need to bind the ports to uio_pci_generic, igb_uio or > vfio-pci. > > I would like to know exactly among uio_pci_generic, igb_uio or vfio-pci to > which one I need to bind the port. > > This is touched upon in the documentation here: http://dpdk.org/doc/guides/linux_gsg/build_dpdk.html#loading-modules-to-enable-userspace-io-for-dpdk
The short version is that it depends upon your use-case. In all cases the igb_uio module should work, but it is an out-of-tree kernel module. Because of that vfio and uio_pci_generic are better alternatives, but have some restrictions: * vfio requires an IOMMU be present (though this should change in future kernels) * uio_pci_generic requires the device have legacy interrupts, so won't work with virtual function devices. If in doubt, and if you don't care about out of tree drivers, just go with igb_uio to start with. /Bruce