> -----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>