From 798267aaa218b99daab4860fd630b9d4bb744c0d Mon Sep 17 00:00:00 2001 From: Mohammed Hawari Date: Tue, 27 Oct 2020 17:42:32 +0100 Subject: rdma: implement multiseg rx without striding rq Change-Id: I623617ad3c80610805dd3cf2a5f371e6677f4844 Signed-off-by: Mohammed Hawari Type: improvement --- src/plugins/rdma/rdma.api | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) (limited to 'src/plugins/rdma/rdma.api') diff --git a/src/plugins/rdma/rdma.api b/src/plugins/rdma/rdma.api index 668f2380e6f..4519e2316d3 100644 --- a/src/plugins/rdma/rdma.api +++ b/src/plugins/rdma/rdma.api @@ -15,7 +15,7 @@ *------------------------------------------------------------------ */ -option version = "1.0.0"; +option version = "2.0.0"; import "vnet/interface_types.api"; enum rdma_mode @@ -39,6 +39,7 @@ enum rdma_mode define rdma_create { + option deprecated="21.01"; u32 client_index; u32 context; @@ -51,6 +52,36 @@ define rdma_create option vat_help = " [name ] [rx-queue-size ] [tx-queue-size ] [num-rx-queues ] [mode ]"; }; +/** \brief + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param host_if - Linux netdev interface name + @param name - new rdma interface name + @param rxq_num - number of receive queues (optional) + @param rxq_size - receive queue size (optional) + @param txq_size - transmit queue size (optional) + @param mode - operation mode (optional) + @param no_multi_seg (optional) - disable chained buffer RX + @param max_pktlen (optional) - maximal RX packet size. +*/ + +define rdma_create_v2 +{ + u32 client_index; + u32 context; + + string host_if[64]; + string name[64]; + u16 rxq_num [default=1]; + u16 rxq_size [default=1024]; + u16 txq_size [default=1024]; + vl_api_rdma_mode_t mode [default=0]; + bool no_multi_seg [default=0]; + u16 max_pktlen [default=0]; + option vat_help = " [name ] [rx-queue-size ] [tx-queue-size ] [num-rx-queues ] [mode ] [no-multi-seg] [max-pktlen ]"; +}; + + /** \brief @param context - sender context, to match reply w/ request @param retval - return value for request @@ -64,6 +95,19 @@ define rdma_create_reply vl_api_interface_index_t sw_if_index; }; +/** \brief + @param context - sender context, to match reply w/ request + @param retval - return value for request + @param sw_if_index - software index for the new rdma interface +*/ + +define rdma_create_v2_reply +{ + u32 context; + i32 retval; + vl_api_interface_index_t sw_if_index; +}; + /** \brief @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request -- cgit 1.2.3-korg