On 10/8/19 8:23 AM, Tiwei Bie wrote: > 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 ...' OK. I'll add it in the next version. > >> + 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 >>
Thanks. -Adrián