> -----Original Message-----
> From: Ding, Xuan <xuan.d...@intel.com>
> Sent: Tuesday, June 21, 2022 3:22 PM
> To: maxime.coque...@redhat.com; Xia, Chenbo <chenbo....@intel.com>
> Cc: dev@dpdk.org; Hu, Jiayu <jiayu...@intel.com>; Ding, Xuan
> <xuan.d...@intel.com>
> Subject: [PATCH v2] doc: update async enqueue API usage
> 
> From: Xuan Ding <xuan.d...@intel.com>
> 
> This patch updates the correct usage for async enqueue APIs.
> The rte_vhost_poll_enqueue_completed() needs to be
> called in time to notify the guest of completed packets and
> avoid packet loss.
> 
> Signed-off-by: Xuan Ding <xuan.d...@intel.com>
> ---
> v2:
> * refine doc and commit log
> ---
>  doc/guides/prog_guide/vhost_lib.rst | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/vhost_lib.rst
> b/doc/guides/prog_guide/vhost_lib.rst
> index cd3f6caa9a..628db3fc38 100644
> --- a/doc/guides/prog_guide/vhost_lib.rst
> +++ b/doc/guides/prog_guide/vhost_lib.rst
> @@ -480,6 +480,14 @@ the same vring with their own DMA virtual channels.
> Besides, the number
>  of DMA devices is limited. For the purpose of scaling, it's necessary to
>  support sharing DMA channels among vrings.
> 
> +* Async enqueue API usage
> +
> +  In async enqueue path, rte_vhost_poll_enqueue_completed() needs to be
> +  called in time to notify the guest of DMA copy completed packets.
> +  Moreover, calling rte_vhost_submit_enqueue_burst() all the time but
> +  not poll completed will cause the DMA ring to be full, which will
> +  result in packet loss eventually.
> +
>  Recommended IOVA mode in async datapath
>  ---------------------------------------
> 
> --
> 2.17.1

Reviewed-by: Chenbo Xia <chenbo....@intel.com>

Reply via email to