mbox series

[v5,0/3] provide thread unsafe async registration functions

Message ID 1626465089-17052-1-git-send-email-jiayu.hu@intel.com (mailing list archive)
Headers
Series provide thread unsafe async registration functions |

Message

Hu, Jiayu July 16, 2021, 7:51 p.m. UTC
  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.

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 |  35 ++++++--
 examples/vhost/main.c               |   8 +-
 lib/vhost/rte_vhost_async.h         |  86 ++++++++++++++-----
 lib/vhost/version.map               |   4 +
 lib/vhost/vhost.c                   | 162 ++++++++++++++++++++++++++----------
 lib/vhost/vhost.h                   |   3 +-
 lib/vhost/vhost_user.c              |   5 +-
 7 files changed, 219 insertions(+), 84 deletions(-)