Concurrent async add_lockspace calls are limited by the number of
worker
threads. Using larger number of worker threads shorten the time to add
many locksapces in large setups.
Previously this value could be modified only via the command line. Now
it can be modified via the sanlock configuration file for easier
deployment.
Buglink:
https://bugzilla.redhat.com/1902468
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
---
src/main.c | 7 +++++++
src/sanlock.conf | 3 +++
2 files changed, 10 insertions(+)
diff --git a/src/main.c b/src/main.c
index e2901f3..63d8cff 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2877,6 +2877,13 @@ static void read_config_file(void)
} else {
log_error("ignore unknown
max_sectors_kb %s", str);
}
+
+ } else if (!strcmp(str, "max_worker_threads")) {
+ get_val_int(line, &val);
+ if (val < DEFAULT_MIN_WORKER_THREADS)
+ val = DEFAULT_MIN_WORKER_THREADS;
+ com.max_worker_threads = val;
+
}
}
diff --git a/src/sanlock.conf b/src/sanlock.conf
index 9b78e5c..2909a9c 100644
--- a/src/sanlock.conf
+++ b/src/sanlock.conf
@@ -66,3 +66,6 @@
#
# write_init_io_timeout = <seconds>
# command line: n/a
+#
+# max_worker_threads = 8
+# command line: -t 8
+1