On 5/24/22 04:48, Andy Pei wrote:
This patch set add virtio_blk device support to vdpa/ifc driver.
With a lot of similarities, I re-use part of vdpa/ifc driver.
Distinguish the virtio net and blk device by device id, and implement
specific features and ops.
Add example to vdpa to support virtio_blk device.
To support blk device live migration, some modification to vhost lib.
Perform dev_conf op only under VHOST_USER_SET_VRING_CALL msg.


v10:
  fix typo.
  add more NULL pointer check.
  fix a error handler.

v9:
  fix some naming issue.
  add more NULL pointer check.
  close open file when errors occur.

v8:
  delete some redundant code.
  fix some commit log.

v7:
  Check on expected fd num in new vhost msg handler.
  Sanity check on vhost msg size.
  Fix typo.
  Add commit log to help understand code.
  Remove duplicated code.
  Add new API to get vDPA device type.

v6:
  fix some commit log.
  add vhost socket in log output to make it more user-friendly.
  when driver ops fail, just output some log, do not break message handler.
  check vhost msg size in msg handler.
v5:
  fix some coding style issues.
v4:
  add args "isblk" to vdpa example to specify a block device, fix some
  issue in example.
  Make sure code specify for block device does not affect net device.
v3:
  Fix some compile issues.
v2:
  Fix some coding style issues.

Andy Pei (13):
   vdpa/ifc: add support for virtio blk device
   vhost: add vDPA ops for blk device
   vhost: add vhost msg support for get/set config
   vdpa/ifc: add blk ops for ifc device
   vdpa/ifc: add vDPA interrupt relay for blk device
   vdpa/ifc: add block device SW live-migration
   vhost: add API to get vDPA device type
   vdpa/ifc: add get device type ops to ifc driver
   examples/vdpa: add virtio blk support
   usertools: add support for virtio blk device
   vdpa/ifc: add log for config space of virtio blk
   vdpa/ifc: add interrupt handling for config space
   vdpa/ifc/base: access correct register for blk device

  doc/guides/prog_guide/vhost_lib.rst    |   5 +
  doc/guides/rel_notes/release_22_07.rst |   4 +
  drivers/vdpa/ifc/base/ifcvf.c          |  34 ++-
  drivers/vdpa/ifc/base/ifcvf.h          |  27 ++-
  drivers/vdpa/ifc/ifcvf_vdpa.c          | 420 +++++++++++++++++++++++++++++++--
  examples/vdpa/main.c                   |  56 +++++
  examples/vdpa/vdpa_blk_compact.h       |  50 ++++
  lib/vhost/rte_vhost.h                  |  17 ++
  lib/vhost/socket.c                     |  44 ++++
  lib/vhost/vdpa_driver.h                |  11 +-
  lib/vhost/version.map                  |   1 +
  lib/vhost/vhost_user.c                 |  85 +++++++
  lib/vhost/vhost_user.h                 |  13 +
  usertools/dpdk-devbind.py              |   5 +-
  14 files changed, 741 insertions(+), 31 deletions(-)
  create mode 100644 examples/vdpa/vdpa_blk_compact.h


Applied to dpdk-next-virtio/main.

Thanks,
Maxime

Reply via email to