Linux vdpa interface allows vdpa device management functionality. This includes adding, removing, querying vdpa devices. vdpa interface also includes showing supported management devices which support such operations. This patchset includes kernel uapi headers and a vdpa tool. examples: $ vdpa mgmtdev show vdpasim: supported_classes net $ vdpa mgmtdev show -jp { "show": { "vdpasim": { "supported_classes": [ "net" ] } } } Create a vdpa device of type networking named as "foo2" from the management device vdpasim_net: $ vdpa dev add mgmtdev vdpasim_net name foo2 Show the newly created vdpa device by its name: $ vdpa dev show foo2 foo2: type network mgmtdev vdpasim_net vendor_id 0 max_vqs 2 max_vq_size 256 $ vdpa dev show foo2 -jp { "dev": { "foo2": { "type": "network", "mgmtdev": "vdpasim_net", "vendor_id": 0, "max_vqs": 2, "max_vq_size": 256 } } } Delete the vdpa device after its use: $ vdpa dev del foo2 Patch summary: Patch-1 adds kernel headers for vdpa subsystem Patch-2 adds vdpa tool and its man pages Kernel headers are from the vhost kernel tree [1] from branch linux-next. [1] https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git Parav Pandit (2): Add kernel headers vdpa: Add vdpa tool Makefile | 2 +- include/uapi/linux/vdpa.h | 40 ++ include/uapi/linux/virtio_ids.h | 58 +++ man/man8/vdpa-dev.8 | 96 ++++ man/man8/vdpa-mgmtdev.8 | 53 ++ man/man8/vdpa.8 | 76 +++ vdpa/Makefile | 24 + vdpa/vdpa.c | 828 ++++++++++++++++++++++++++++++++ 8 files changed, 1176 insertions(+), 1 deletion(-) create mode 100644 include/uapi/linux/vdpa.h create mode 100644 include/uapi/linux/virtio_ids.h create mode 100644 man/man8/vdpa-dev.8 create mode 100644 man/man8/vdpa-mgmtdev.8 create mode 100644 man/man8/vdpa.8 create mode 100644 vdpa/Makefile create mode 100644 vdpa/vdpa.c -- 2.26.2 _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization