[dpdk-dev] bifurcated driver

Thomas Monjalon thomas.monjalon at 6wind.com
Wed Nov 5 14:00:53 CET 2014


Hi Danny,

2014-10-31 17:36, O'driscoll, Tim:
> Bifurcated Driver (Danny.Zhou at intel.com)

Thanks for the presentation of bifurcated driver during the community call.
I asked if you looked at ibverbs and you wanted a link to check.
The kernel module is here:
	http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/infiniband/core
The userspace library:
	http://git.kernel.org/cgit/libs/infiniband/libibverbs.git

Extract from Kconfig:
"
config INFINIBAND_USER_ACCESS
	tristate "InfiniBand userspace access (verbs and CM)"
	select ANON_INODES
	---help---
	  Userspace InfiniBand access support.  This enables the
	  kernel side of userspace verbs and the userspace
	  communication manager (CM).  This allows userspace processes
	  to set up connections and directly access InfiniBand
	  hardware for fast-path operations.  You will also need
	  libibverbs, libibcm and a hardware driver library from
	  <http://www.openfabrics.org/git/>.
"

It seems to be close to the bifurcated driver needs.
Not sure if it can solve the security issues if there is no dedicated MMU
in the NIC.

I feel we should sum up pros and cons of
	- igb_uio
	- uio_pci_generic
	- VFIO
	- ibverbs
	- bifurcated driver
I suggest to consider these criterias:
	- upstream status
	- usable with kernel netdev
	- usable in a vm
	- usable for ethernet
	- hardware requirements
	- security protection
	- performance

-- 
Thomas


More information about the dev mailing list