[dpdk-dev] [PATCH v6 0/3] provide thread unsafe async registration functions

Jiayu Hu jiayu.hu at intel.com
Mon Jul 19 17:00:44 CEST 2021


Lock protection is needed during the vhost notifies the application of
device readiness, so the first patch adds lock protection. In addition,
the second patch reworks async feature structure to improve readability.
After performing locking, existed async vhost registration functions will
cause deadlock, as they acquire lock too. The last patch provides thread
unsafe registration functions to support calling within vhost callback
functions.

v6:
* remove RTE_VHOST_ASYNC_FEATURE_UNKNOWN
* add blank lines in doc
v5:
* improve coding style
* update commit log, doc and comments
* remove useless field async_inorder
* change async_threshold from uint16_t to uint32_t
v4:
* remove brace {} in single statement block
v3:
* rename and use enum to define async device features
* change padding fields to 8 bytes
v2:
* rework async feature structure
* fix typo in commit log

Jiayu Hu (3):
  vhost: fix lock on device readiness notification
  vhost: rework async configuration structure
  vhost: add thread unsafe async registeration functions

 doc/guides/prog_guide/vhost_lib.rst |  37 ++++++--
 examples/vhost/main.c               |   8 +-
 lib/vhost/rte_vhost_async.h         |  85 ++++++++++++++-----
 lib/vhost/version.map               |   4 +
 lib/vhost/vhost.c                   | 162 ++++++++++++++++++++++++++----------
 lib/vhost/vhost.h                   |   3 +-
 lib/vhost/vhost_user.c              |   5 +-
 7 files changed, 220 insertions(+), 84 deletions(-)

-- 
2.7.4



More information about the dev mailing list