- vsocket->dequeue_zero_copy = flags & RTE_VHOST_USER_DEQUEUE_ZERO_COPY;
-
- if (vsocket->dequeue_zero_copy &&
- (flags & RTE_VHOST_USER_IOMMU_SUPPORT)) {
- RTE_LOG(ERR, VHOST_CONFIG,
- "error: enabling dequeue zero copy and IOMMU features "
- "simultaneously is not supported\n");
+ vsocket->vdpa_dev = NULL;
+ vsocket->extbuf = flags & RTE_VHOST_USER_EXTBUF_SUPPORT;
+ vsocket->linearbuf = flags & RTE_VHOST_USER_LINEARBUF_SUPPORT;
+ vsocket->async_copy = flags & RTE_VHOST_USER_ASYNC_COPY;
+
+ if (vsocket->async_copy &&
+ (flags & (RTE_VHOST_USER_IOMMU_SUPPORT |
+ RTE_VHOST_USER_POSTCOPY_SUPPORT))) {
+ VHOST_LOG_CONFIG(ERR, "error: enabling async copy and IOMMU "
+ "or post-copy feature simultaneously is not "
+ "supported\n");