On 03/08/2017 03:45 AM, Yuanhan Liu wrote:
On Mon, Mar 06, 2017 at 09:27:37AM +0100, Maxime Coquelin wrote:
This patch implements the function for the application to
get the MTU value.
rte_vhost_mtu_get() fills the mtu parameter with the MTU value
set in QEMU if VIRTIO_NET_F_MTU has been negotiated and returns 0,
-ENOTSUP otherwise.
The function returns -EAGAIN if Virtio feature negotiation
didn't happened yet.
Signed-off-by: Maxime Coquelin <maxime.coque...@redhat.com>
---
lib/librte_vhost/rte_virtio_net.h | 15 +++++++++++++++
lib/librte_vhost/vhost.c | 19 +++++++++++++++++++
2 files changed, 34 insertions(+)
diff --git a/lib/librte_vhost/rte_virtio_net.h
b/lib/librte_vhost/rte_virtio_net.h
index 926039c..ff02e9b 100644
--- a/lib/librte_vhost/rte_virtio_net.h
+++ b/lib/librte_vhost/rte_virtio_net.h
@@ -100,6 +100,21 @@ int rte_vhost_driver_callback_register(struct
virtio_net_device_ops const * cons
int rte_vhost_driver_session_start(void);
/**
+ * Get the MTU value of the device if set in QEMU.
+ *
+ * @param vid
+ * virtio-net device ID
+ * @param mtu
+ * The variable to store the MTU value
+ *
+ * @return
+ * 0: success
+ * -EAGAIN: device not yet started
+ * -ENOTSUP: device does not support MTU feature
+ */
+int rte_vhost_mtu_get(int vid, uint16_t *mtu);
I'd suggest to name it "_get_mtu", to align with the current naming style:
_get_ifname
_get_numa_node
...
Good point, I named it against the eth_dev's callback name, but it does
make more sense to be consistent with vhost API style.
Besides that, you should add an entry to the rte_vhost_version.map.
Right.
Thanks,
Maxime