[dpdk-dev] [PATCH] vfio: allow to map other memory regions
pawelx.wodkowski at intel.com
Wed Jun 28 11:54:32 CEST 2017
> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> Sent: Monday, June 19, 2017 11:04 PM
> To: Wodkowski, PawelX <pawelx.wodkowski at intel.com>
> Cc: dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] vfio: allow to map other memory regions
> Some comments below
> 24/05/2017 13:17, Pawel Wodkowski:
> > Currently it is not possible to use memory that is not owned by DPDK to
> > perform DMA. This scenarion might be used in vhost applications (like
> > SPDK) where guest send its own memory table. To fill this gap provide
> > API to allow registering arbitrary address in VFIO container.
> > Signed-off-by: Pawel Wodkowski <pawelx.wodkowski at intel.com>
> > ---
> > lib/librte_eal/linuxapp/eal/Makefile | 3 +
> > lib/librte_eal/linuxapp/eal/eal_vfio.c | 142
> > lib/librte_eal/linuxapp/eal/eal_vfio.h | 10 ++
> > lib/librte_eal/linuxapp/eal/include/rte_iommu.h | 78 +++++++++++++
> > lib/librte_eal/linuxapp/eal/rte_eal_version.map | 8 ++
> > 5 files changed, 224 insertions(+), 17 deletions(-)
> > create mode 100644 lib/librte_eal/linuxapp/eal/include/rte_iommu.h
> VFIO is not referenced in the doxygen of these functions.
> Could we use this API for something else than VFIO?
This is for any IOMMU hw/module/driver used in host which require special
care about memory regions used for DMA. It is not restricted to VFIO even though
only VFIO is implemented.
> Any API should be declared in common directory, even if it is not
> implemented for FreeBSD (returning -ENOTSUP).
I think those function should be NOP for FreeBSD (like RTE_VFIO_NOIOMMU do)
or be conditionally compiled/included (like it is now). I decide to take second way.
Do you think that I should move rte_iommu.h to common directory and use #ifdef
More information about the dev