aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/rdma/cli.c
diff options
context:
space:
mode:
authorBenoît Ganne <bganne@cisco.com>2019-04-03 15:16:28 +0200
committerDamjan Marion <dmarion@me.com>2019-04-09 23:47:39 +0000
commit5763e47b7d0d9de7a46541e432abee39e17b5f1e (patch)
tree2db12b2a8e28785128e49546b0353da1cdd3be72 /src/plugins/rdma/cli.c
parente035892055a7bd73297e22aefd4dcabe966e9b51 (diff)
rdma: add multiqueue support
Add support for multiqueue for RDMA devices. Change-Id: I78a2481cec6747494c670cc776475828be3af55b Signed-off-by: Benoît Ganne <bganne@cisco.com>
Diffstat (limited to 'src/plugins/rdma/cli.c')
-rw-r--r--src/plugins/rdma/cli.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/plugins/rdma/cli.c b/src/plugins/rdma/cli.c
index e1ccbb66c0b..1f377a738fc 100644
--- a/src/plugins/rdma/cli.c
+++ b/src/plugins/rdma/cli.c
@@ -33,18 +33,24 @@ rdma_create_command_fn (vlib_main_t * vm, unformat_input_t * input,
unformat_input_t _line_input, *line_input = &_line_input;
rdma_create_if_args_t args;
- clib_memset (&args, 0, sizeof (rdma_create_if_args_t));
-
/* Get a line of input. */
if (!unformat_user (input, unformat_line_input, line_input))
return 0;
+ clib_memset (&args, 0, sizeof (rdma_create_if_args_t));
+
while (unformat_check_input (line_input) != UNFORMAT_END_OF_INPUT)
{
if (unformat (line_input, "host-if %s", &args.ifname))
;
else if (unformat (line_input, "name %s", &args.name))
;
+ else if (unformat (line_input, "rx-queue-size %u", &args.rxq_size))
+ ;
+ else if (unformat (line_input, "tx-queue-size %u", &args.txq_size))
+ ;
+ else if (unformat (line_input, "num-rx-queues %u", &args.rxq_num))
+ ;
else
return clib_error_return (0, "unknown input `%U'",
format_unformat_error, input);
@@ -62,7 +68,9 @@ rdma_create_command_fn (vlib_main_t * vm, unformat_input_t * input,
/* *INDENT-OFF* */
VLIB_CLI_COMMAND (rdma_create_command, static) = {
.path = "create interface rdma",
- .short_help = "create interface rdma <host-if ifname> [name <name>]",
+ .short_help = "create interface rdma <host-if ifname> [name <name>]"
+ " [rx-queue-size <size>] [tx-queue-size <size>]"
+ " [num-rx-queues <size>]",
.function = rdma_create_command_fn,
};
/* *INDENT-ON* */
@@ -101,7 +109,7 @@ rdma_delete_command_fn (vlib_main_t * vm, unformat_input_t * input,
hw = vnet_get_sup_hw_interface (vnm, sw_if_index);
if (hw == NULL || rdma_device_class.index != hw->dev_class_index)
- return clib_error_return (0, "not an AVF interface");
+ return clib_error_return (0, "not a RDMA interface");
rd = pool_elt_at_index (rm->devices, hw->dev_instance);