Whamcloud - gitweb
LU-7578 gnilnd: Add module parameter reg_fail_timeout
[fs/lustre-release.git] / lnet / klnds / gnilnd / gnilnd_modparams.c
index d89dc3e..7026b00 100644 (file)
@@ -30,7 +30,7 @@ CFS_MODULE_PARM(credits, "i", int, 0444,
                "# concurrent sends");
 
 static int eager_credits = 256 * 1024;
-CFS_MODULE_PARM(eager_credits, "i", int, 0444,
+CFS_MODULE_PARM(eager_credits, "i", int, 0644,
                "# eager buffers");
 
 static int peer_credits = 16;
@@ -66,8 +66,8 @@ static int max_reconnect_interval = GNILND_MAX_RECONNECT_TO;
 CFS_MODULE_PARM(max_reconnect_interval, "i", int, 0644,
                "maximum connection retry interval (seconds)");
 
-static int max_immediate = 8192;
-CFS_MODULE_PARM(max_immediate, "i", int, 0644,
+static int max_immediate = 2048;
+CFS_MODULE_PARM(max_immediate, "i", int, 0444,
                "immediate/RDMA breakpoint");
 
 static int checksum = GNILND_CHECKSUM_DEFAULT;
@@ -192,7 +192,15 @@ CFS_MODULE_PARM(max_conn_purg, "i", int, 0644,
 
 static int thread_affinity = 0;
 CFS_MODULE_PARM(thread_affinity, "i", int, 0444,
-               "scheduler thread affinity default 0 (diabled)");
+               "scheduler thread affinity default 0 (disabled)");
+
+static int thread_safe = GNILND_TS_ENABLE;
+CFS_MODULE_PARM(thread_safe, "i", int, 0444,
+               "Use kgni thread safe API if available");
+
+static int reg_fail_timeout = GNILND_REGFAILTO_DISABLE;
+CFS_MODULE_PARM(reg_fail_timeout, "i", int, 0644,
+               "fmablk registration timeout LBUG");
 
 kgn_tunables_t kgnilnd_tunables = {
        .kgn_min_reconnect_interval = &min_reconnect_interval,
@@ -233,6 +241,8 @@ kgn_tunables_t kgnilnd_tunables = {
        .kgn_fast_reconn            = &fast_reconn,
        .kgn_efault_lbug            = &efault_lbug,
        .kgn_thread_affinity        = &thread_affinity,
+       .kgn_thread_safe            = &thread_safe,
+       .kgn_reg_fail_timeout       = &reg_fail_timeout,
        .kgn_max_purgatory          = &max_conn_purg
 };
 
@@ -535,6 +545,22 @@ static struct ctl_table kgnilnd_ctl_table[] = {
        },
        {
                INIT_CTL_NAME
+               .procname = "thread_safe"
+               .data     = &thread_safe,
+               .maxlen   = sizeof(int),
+               .mode     = 0444,
+               .proc_handler = &proc_dointvec
+       },
+       {
+               INIT_CTL_NAME
+               .procname = "reg_fail_timeout"
+               .data     = &reg_fail_timeout,
+               .maxlen   = sizeof(int),
+               .mode     = 0644,
+               .proc_handler = &proc_dointvec
+       },
+       {
+               INIT_CTL_NAME
                .procname = "max_conn_purg"
                .data     = &max_conn_purg,
                .maxlen   = sizeof(int),
@@ -564,7 +590,7 @@ kgnilnd_tunables_init()
 
 #if CONFIG_SYSCTL && !CFS_SYSFS_MODULE_PARM
        kgnilnd_tunables.kgn_sysctl =
-               cfs_register_sysctl_table(kgnilnd_top_ctl_table, 0);
+               register_sysctl_table(kgnilnd_top_ctl_table, 0);
 
        if (kgnilnd_tunables.kgn_sysctl == NULL)
                CWARN("Can't setup /proc tunables\n");
@@ -616,6 +642,6 @@ kgnilnd_tunables_fini()
 {
 #if CONFIG_SYSCTL && !CFS_SYSFS_MODULE_PARM
        if (kgnilnd_tunables.kgn_sysctl != NULL)
-               cfs_unregister_sysctl_table(kgnilnd_tunables.kgn_sysctl);
+               unregister_sysctl_table(kgnilnd_tunables.kgn_sysctl);
 #endif
 }