From: Steve Wise Date: Tue, 20 Sep 2016 15:02:12 +0000 (-0700) Subject: nvme-cli/fabrics: Add reconnect-delay param to connect cmd X-Git-Tag: v1.0~56 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=62520f9688c4bc96a4fc1dc96b14e03d6850d2f4;p=users%2Fsagi%2Fnvme-cli.git nvme-cli/fabrics: Add reconnect-delay param to connect cmd Added 'reconnect-delay' to 'connect' command so users can specify the delay time, in seconds, before reconnecting due to a keep alive timeout. usage examples: nvme connect --reconnect-delay=30 --transport=rdma --traddr=10.0.1.14 --nqn=test-nvme nvme connect -r 30 -t rdma -a 10.0.1.14 -n test-nvme Signed-off-by: Steve Wise Reviewed-by: Jay Freyensee --- diff --git a/fabrics.c b/fabrics.c index 45257539..dff5d6ad 100644 --- a/fabrics.c +++ b/fabrics.c @@ -52,6 +52,7 @@ struct config { char *hostnqn; char *nr_io_queues; char *keep_alive_tmo; + char *reconnect_delay; char *raw; char *device; } cfg = { 0 }; @@ -507,6 +508,14 @@ static int build_options(char *argstr, int max_len) max_len -= len; } + if (cfg.reconnect_delay) { + len = snprintf(argstr, max_len, ",reconnect_delay=%s", cfg.reconnect_delay); + if (len < 0) + return -EINVAL; + argstr += len; + max_len -= len; + } + return 0; } @@ -750,6 +759,8 @@ int connect(const char *desc, int argc, char **argv) "number of io queues to use (default is core count)" }, {"keep-alive-tmo", 'k', "LIST", CFG_STRING, &cfg.keep_alive_tmo, required_argument, "keep alive timeout period in seconds" }, + {"reconnect-delay", 'r', "LIST", CFG_STRING, &cfg.reconnect_delay, required_argument, + "reconnect timeout period in seconds" }, {0}, };