summaryrefslogtreecommitdiffstats
path: root/src/vnet/interface.api
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/interface.api')
-rw-r--r--src/vnet/interface.api43
1 files changed, 42 insertions, 1 deletions
diff --git a/src/vnet/interface.api b/src/vnet/interface.api
index a8d4d71d838..fdf34f0da34 100644
--- a/src/vnet/interface.api
+++ b/src/vnet/interface.api
@@ -1,4 +1,4 @@
-option version = "2.0.0";
+option version = "2.1.0";
service {
rpc want_interface_events returns want_interface_events_reply
@@ -433,6 +433,9 @@ autoreply define sw_interface_set_rx_mode
};
/** \brief Set an interface's rx-placement
+ Rx-Queue placement on specific thread is operational for only hardware
+ interface. It will not set queue - thread placement for sub-interfaces,
+ p2p and pipe interfaces.
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
@param sw_if_index - the interface whose rx-placement will be set
@@ -450,6 +453,44 @@ autoreply define sw_interface_set_rx_placement
u8 is_main;
};
+/** \brief dump the rx queue placement of interface(s)
+ @param sw_if_index - optional interface index for which queue placement to
+ be requested. sw_if_index = ~0 will dump placement information for all
+ interfaces. It will not dump information related to sub-interfaces, p2p
+ and pipe interfaces.
+*/
+define sw_interface_rx_placement_dump
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+};
+
+/** \brief show the interface's queue - thread placement
+ This api is used to display the interface and queue worker
+ thread placement. One message per rx-queue per interface will
+ be sent to client.
+ Each message will contain information about rx-queue id of an
+ interface, interface index, thread on which this rx-queue is
+ placed and mode of rx-queue.
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - the interface whose rx-placement will be dumped
+ @param queue_id - the queue id
+ @param worker_id - the worker id on which queue_id is placed,
+ worker_id = 0 means main thread.
+ @param mode - polling=1, interrupt=2, adaptive=3
+*/
+define sw_interface_rx_placement_details
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+ u32 queue_id;
+ u32 worker_id;
+ u8 mode;
+};
+
/* Gross kludge, DGMS */
autoreply define interface_name_renumber
{