On Fri, Sep 27, 2019 at 08:37:59PM +0200, Adrian Moreno wrote: > The simltaneous use of dequeue_zero_copy and IOMMU is problematic. > Not only because IOVA_VA mode is not supported but also because the > potential invalidation of guest pages while the buffers are in use, > is not handled. > > Prevent these two features to be enabled simultaneosly. > > Fixes: 69c90e98f483 ("vhost: enable IOMMU support") > Cc: maxime.coque...@redhat.com > Cc: sta...@dpdk.org > > Signed-off-by: Adrian Moreno <amore...@redhat.com> > --- > lib/librte_vhost/socket.c | 8 ++++++++ > 1 file changed, 8 insertions(+)
Reviewed-by: Tiwei Bie <tiwei....@intel.com> > > diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c > index 274988c4d..534a7ffe3 100644 > --- a/lib/librte_vhost/socket.c > +++ b/lib/librte_vhost/socket.c > @@ -871,6 +871,14 @@ rte_vhost_driver_register(const char *path, uint64_t > flags) > } > vsocket->dequeue_zero_copy = flags & RTE_VHOST_USER_DEQUEUE_ZERO_COPY; > > + if (vsocket->dequeue_zero_copy && > + (flags & RTE_VHOST_USER_IOMMU_SUPPORT)) { It's better to add one more space before '(flags ...' > + RTE_LOG(ERR, VHOST_CONFIG, > + "error: enabling dequeue zero copy and IOMMU features " > + "simultaneously is not supported\n"); > + goto out_mutex; > + } > + > /* > * Set the supported features correctly for the builtin vhost-user > * net driver. > -- > 2.21.0 >