It's used to get number of available registered vDPA devices.

Signed-off-by: Xiaolong Ye <xiaolong...@intel.com>
---
 lib/librte_vhost/rte_vdpa.h            | 3 +++
 lib/librte_vhost/rte_vhost_version.map | 1 +
 lib/librte_vhost/vdpa.c                | 6 ++++++
 3 files changed, 10 insertions(+)

diff --git a/lib/librte_vhost/rte_vdpa.h b/lib/librte_vhost/rte_vdpa.h
index 90465ca26..b8223e337 100644
--- a/lib/librte_vhost/rte_vdpa.h
+++ b/lib/librte_vhost/rte_vdpa.h
@@ -84,4 +84,7 @@ rte_vdpa_find_device_id(struct rte_vdpa_dev_addr *addr);
 struct rte_vdpa_device * __rte_experimental
 rte_vdpa_get_device(int did);
 
+/* Get current available vdpa device number */
+int __rte_experimental
+rte_vdpa_get_device_num(void);
 #endif /* _RTE_VDPA_H_ */
diff --git a/lib/librte_vhost/rte_vhost_version.map 
b/lib/librte_vhost/rte_vhost_version.map
index da220dd02..ae39b6e21 100644
--- a/lib/librte_vhost/rte_vhost_version.map
+++ b/lib/librte_vhost/rte_vhost_version.map
@@ -67,6 +67,7 @@ EXPERIMENTAL {
        rte_vdpa_unregister_device;
        rte_vdpa_find_device_id;
        rte_vdpa_get_device;
+       rte_vdpa_get_device_num;
        rte_vhost_driver_attach_vdpa_device;
        rte_vhost_driver_detach_vdpa_device;
        rte_vhost_driver_get_vdpa_device_id;
diff --git a/lib/librte_vhost/vdpa.c b/lib/librte_vhost/vdpa.c
index c82fd4370..c2c5dff1d 100644
--- a/lib/librte_vhost/vdpa.c
+++ b/lib/librte_vhost/vdpa.c
@@ -113,3 +113,9 @@ rte_vdpa_get_device(int did)
 
        return vdpa_devices[did];
 }
+
+int
+rte_vdpa_get_device_num(void)
+{
+       return vdpa_device_num;
+}
-- 
2.17.1

Reply via email to