]> www.infradead.org Git - users/sagi/nvme-cli.git/commitdiff
nvme-cli/fabrics: Add reconnect-delay param to connect cmd
authorSteve Wise <swise@opengridcomputing.com>
Tue, 20 Sep 2016 15:02:12 +0000 (08:02 -0700)
committerKeith Busch <keith.busch@intel.com>
Thu, 22 Sep 2016 16:37:24 +0000 (12:37 -0400)
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 <swise@opengridcomputing.com>
Reviewed-by: Jay Freyensee <james_p_freyensee at linux.intel.com>
fabrics.c

index 45257539fb4be880ae068457fcfe2869db64109e..dff5d6add51339ee5b2e69d63db4ae9d812e7f17 100644 (file)
--- 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},
        };