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 in-flight 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. v4: * rebased on the latest codess 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 (4): vhost: fix async vhost ops return type vhost: add unsafe API to drain pkts in async vhost examples/vhost: handle memory hotplug for async vhost doc: update doc for try drain API in vhost lib 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 | 4 +- examples/vhost/main.c | 48 +++++++- examples/vhost/main.h | 1 + lib/vhost/rte_vhost_async.h | 28 ++++- lib/vhost/version.map | 3 + lib/vhost/vhost_user.c | 9 ++ lib/vhost/virtio_net.c | 146 ++++++++++++++++++++----- 10 files changed, 215 insertions(+), 38 deletions(-) -- 2.29.2