Previously SPDK use libvfio-user library to provide emulated NVMe devices to VM, but it's limited to NVMe device type only. Here we add SPDK vfu_target library abstraction based on libvfio-user which supports more PCI device types. We will add virtio-blk and virtio-scsi devices emulation based on vfu_tgt library in following patches, actually this library can support NVMe emulation too, due to the fact that the NVMe emulation is already exist, so we will keep the NVMe emulation which based on libvfio-user directly as it is. Change-Id: Ib0ead6c6118fa62308355fe432003dd928a2fae9 Signed-off-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12597 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
24 lines
494 B
Plaintext
24 lines
494 B
Plaintext
{
|
|
global:
|
|
|
|
# public functions from vfu_target.h
|
|
spdk_vfu_init;
|
|
spdk_vfu_fini;
|
|
spdk_vfu_set_socket_path;
|
|
spdk_vfu_register_endpoint_ops;
|
|
spdk_vfu_create_endpoint;
|
|
spdk_vfu_delete_endpoint;
|
|
spdk_vfu_get_endpoint_id;
|
|
spdk_vfu_get_endpoint_name;
|
|
spdk_vfu_get_endpoint_by_name;
|
|
spdk_vfu_get_vfu_ctx;
|
|
spdk_vfu_get_endpoint_private;
|
|
spdk_vfu_endpoint_get_pci_config;
|
|
spdk_vfu_map_one;
|
|
spdk_vfu_unmap_sg;
|
|
spdk_vfu_endpoint_msix_enabled;
|
|
spdk_vfu_endpoint_intx_enabled;
|
|
|
|
local: *;
|
|
};
|