mbox series

[v8,0/4] vhost: handle memory hotplug for async vhost

Message ID 20210723080937.20256-1-cheng1.jiang@intel.com (mailing list archive)
Headers show
Series vhost: handle memory hotplug for async vhost | expand

Message

Jiang, Cheng1 July 23, 2021, 8:09 a.m. UTC
When the guest memory is hotplugged, the vhost application which
enables DMA acceleration must stop DMA transfers before the vhost
re-maps the guest memory.

This patch set is to provide an unsafe API to drain inflight pkts
which are submitted to DMA engine in vhost async data path, and
notify the vhost application of stopping DMA transfers. And enable it
in vhost example.

v8:
 * updated doc in the code patch
 * fix a compile error in cross-compilation
v7:
 * rebased on the latest codes
 * improved commit log
v6:
 * removed unnecessary args for the new API
 * improved variable names and function names
 * added enable notification in set_mem_table
 * fixed vhost example queue clear process
v5:
 * added fixes in 'vhost: fix async vhost ops return type'
 * improved git log, variable names and logs
v4:
 * rebased on the latest codes
v3:
 * added a patch to fix async ops return type
 * fixed async ops fail handler
 * updated the doc
v2:
 * changed the patch structure

Cheng Jiang (3):
  vhost: fix async vhost ops return type
  vhost: add unsafe API to clear packets in async vhost
  examples/vhost: handle memory hotplug for async vhost

Jiayu Hu (1):
  vhost: handle memory hotplug for async vhost

 doc/guides/prog_guide/vhost_lib.rst    |   5 +
 doc/guides/rel_notes/release_21_08.rst |   5 +
 examples/vhost/ioat.c                  |   4 +-
 examples/vhost/ioat.h                  |   8 +-
 examples/vhost/main.c                  |  55 ++++++++-
 examples/vhost/main.h                  |   1 +
 lib/vhost/rte_vhost_async.h            |  30 ++++-
 lib/vhost/version.map                  |   1 +
 lib/vhost/vhost_user.c                 |  16 +++
 lib/vhost/virtio_net.c                 | 152 ++++++++++++++++++++-----
 10 files changed, 234 insertions(+), 43 deletions(-)

--
2.29.2

Comments

Xia, Chenbo July 23, 2021, 9:08 a.m. UTC | #1
> -----Original Message-----
> From: Jiang, Cheng1 <cheng1.jiang@intel.com>
> Sent: Friday, July 23, 2021 4:10 PM
> To: maxime.coquelin@redhat.com; Xia, Chenbo <chenbo.xia@intel.com>
> Cc: dev@dpdk.org; Hu, Jiayu <jiayu.hu@intel.com>; Yang, YvonneX
> <yvonnex.yang@intel.com>; Jiang, Cheng1 <cheng1.jiang@intel.com>
> Subject: [PATCH v8 0/4] vhost: handle memory hotplug for async vhost
> 
> When the guest memory is hotplugged, the vhost application which
> enables DMA acceleration must stop DMA transfers before the vhost
> re-maps the guest memory.
> 
> This patch set is to provide an unsafe API to drain inflight pkts
> which are submitted to DMA engine in vhost async data path, and
> notify the vhost application of stopping DMA transfers. And enable it
> in vhost example.
> 
> v8:
>  * updated doc in the code patch
>  * fix a compile error in cross-compilation
> v7:
>  * rebased on the latest codes
>  * improved commit log
> v6:
>  * removed unnecessary args for the new API
>  * improved variable names and function names
>  * added enable notification in set_mem_table
>  * fixed vhost example queue clear process
> v5:
>  * added fixes in 'vhost: fix async vhost ops return type'
>  * improved git log, variable names and logs
> v4:
>  * rebased on the latest codes
> v3:
>  * added a patch to fix async ops return type
>  * fixed async ops fail handler
>  * updated the doc
> v2:
>  * changed the patch structure
> 
> Cheng Jiang (3):
>   vhost: fix async vhost ops return type
>   vhost: add unsafe API to clear packets in async vhost
>   examples/vhost: handle memory hotplug for async vhost
> 
> Jiayu Hu (1):
>   vhost: handle memory hotplug for async vhost
> 
>  doc/guides/prog_guide/vhost_lib.rst    |   5 +
>  doc/guides/rel_notes/release_21_08.rst |   5 +
>  examples/vhost/ioat.c                  |   4 +-
>  examples/vhost/ioat.h                  |   8 +-
>  examples/vhost/main.c                  |  55 ++++++++-
>  examples/vhost/main.h                  |   1 +
>  lib/vhost/rte_vhost_async.h            |  30 ++++-
>  lib/vhost/version.map                  |   1 +
>  lib/vhost/vhost_user.c                 |  16 +++
>  lib/vhost/virtio_net.c                 | 152 ++++++++++++++++++++-----
>  10 files changed, 234 insertions(+), 43 deletions(-)
> 
> --
> 2.29.2

Series applied to next-virtio/main with the release doc fixed as Thomas suggested.

Thanks.