vhost: binary API changes for interrupt mode
Add operation_mode for create_vhost_user_if, modify_vhost_user_if,
and sw_interface_vhost_user_details. Only polling mode is supported
for these APIs. Other mode is rejected and gets
VNET_API_ERROR_UNIMPLEMENTED error.
Change-Id: I0596f4e2c087aa2b6f78eb3e0b63910b1859641e
Signed-off-by: Steven <sluong@cisco.com>
diff --git a/src/vnet/devices/virtio/vhost_user.api b/src/vnet/devices/virtio/vhost_user.api
index 21e4229..4f604e4 100644
--- a/src/vnet/devices/virtio/vhost_user.api
+++ b/src/vnet/devices/virtio/vhost_user.api
@@ -19,6 +19,7 @@
@param sock_filename - unix socket filename, used to speak with frontend
@param use_custom_mac - enable or disable the use of the provided hardware address
@param mac_address - hardware address to use if 'use_custom_mac' is set
+ @param operation_mode - polling=0, interrupt=1, or adaptive=2
*/
define create_vhost_user_if
{
@@ -31,6 +32,7 @@
u8 use_custom_mac;
u8 mac_address[6];
u8 tag[64];
+ u8 operation_mode;
};
/** \brief vhost-user interface create response
@@ -49,6 +51,7 @@
@param client_index - opaque cookie to identify the sender
@param is_server - our side is socket server
@param sock_filename - unix socket filename, used to speak with frontend
+ @param operation_mode - polling=0, interrupt=1, or adaptive=2
*/
define modify_vhost_user_if
{
@@ -59,6 +62,7 @@
u8 sock_filename[256];
u8 renumber;
u32 custom_dev_instance;
+ u8 operation_mode;
};
/** \brief vhost-user interface modify response
@@ -99,6 +103,7 @@
@param is_server - vhost-user server socket
@param sock_filename - socket filename
@param num_regions - number of used memory regions
+ @param operation_mode - polling=0, interrupt=1, or adaptive=2
*/
define sw_interface_vhost_user_details
{
@@ -111,6 +116,7 @@
u8 sock_filename[256];
u32 num_regions;
i32 sock_errno;
+ u8 operation_mode;
};
define sw_interface_vhost_user_dump