Hi, 2015-12-17 09:52, Burakov, Anatoly: > > > > > On Tue, Dec 15, 2015 at 09:53:18AM -0700, Alex Williamson wrote: > > > > > So it works. Is it acceptable? Useful? Sufficiently complete? > > > > > Does it imply deprecating the uio interface? I believe the > > > > > feature that started this discussion was support for MSI/X > > > > > interrupts so that VFs can support some kind of interrupt (uio > > > > > only supports INTx since it doesn't allow DMA). Implementing that > > > > > would be the ultimate test of whether this provides dpdk with not > > > > > only a more consistent interface, but the feature dpdk wants > > > > > that's missing in uio. Thanks, > > > > > > Ferruh has done a great job so far testing Alex's patch, very few changes > > from DPDK side seem to be required as far as existing functionality goes > > (not > > sure about VF interrupts mentioned by Alex). However, one thing that > > concerns me is usability. While it is true that no-IOMMU mode in VFIO would > > mean uio interfaces could be deprecated in time, the no-iommu mode is way > > more hassle than using igb_uio/uio_pci_generic because it will require a > > kernel recompile as opposed to simply compiling and insmod'ding an out-of- > > tree driver. So, in essence, if you don't want an IOMMU, it's becoming that > > much harder to use DPDK. Would that be something DPDK is willing to live > > with in the absence of uio interfaces? > > > > Excuse me if I missed something obvious. > > Why a kernel compilation is needed? > > Well, not really full kernel compilation, but in the default configuration, > VFIO driver would not support NOIOMMU mode. I.e. it's not compiled by > default. Support for no-iommu should be enabled in kernel config and compiled > in. So, whoever is going to use DPDK with VFIO-no-iommu will have to download > kernel tree and recompile the VFIO module and install it. That's obviously > way more hassle than simply compiling an out-of-tree driver that's already > included and works with an out-of-the-box kernel.
The "out-of-the-box kernel" is configured by your distribution. So we don't know yet what will be their choice. If the distribution supports DPDK, it should be enabled.