5f4e42b80b
vring notification mechanism is transport-specific. At present, vhost dataplane code in `lib/vhost/vhost.c` triggers guest notifications with `eventfd_write()` system call. But this is an AF_UNIX specific notification mechanism. This patch replaces `eventfd_write()` with the existing generic `rte_vhost_vring_call()` function that is part of DPDK's librte_vhost public API. `rte_vhost_vring_call()` takes a vring_idx as an argument to associate the `struct spdk_vhost_virtqueue` instance with the relevant `struct vhost_virtqueue` instance. We introduce a new `vring_idx` field in `struct spdk_vhost_virtqueue` to enable this association. This field is initialized in `start_device()`. In addition, a stub for `rte_vhost_vring_call()` is added in the vhost unit test file. SPDK's internal `rte_vhost` copy will not be updated in order to support the virtio-vhost-user transport. However, an `rte_vhost_vring_call()` function is introduced in SPDK's `rte_vhost` in order to have a solid API. This function is just a wrapper of `eventfd_write()`. Change-Id: Ic93e25cd3f06e92f04766521bc850f1ee80b8ec8 Signed-off-by: Nikos Dragazis <ndragazis@arrikto.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/454373 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>