diff options
authorKaleb S. KEITHLEY <>2020-01-02 07:46:23 -0500
committerRinku Kothiya <>2020-07-08 02:23:11 +0000
commit8eba9dee41e423e000a23527c59090e26bb8181f (patch)
parent5a5f25070f979902a900c327a8774a5d1449555f (diff)
cli: duplicate defns of cli_default_conn_timeout and cli_ten_minutes_timeout
Winter is coming. So is gcc-10. Compiling with gcc-10-20191219 snapshot reveals dupe defns of cli_default_conn_timeout and cli_ten_minutes_timeout in .../cli/src/cli.[ch] due to missing extern decl. There are many changes coming in gcc-10 described in compiling cli.c with gcc-9 we see: ... .quad .LC88 .comm cli_ten_minutes_timeout,4,4 .comm cli_default_conn_timeout,4,4 .text .Letext0: ... and with gcc-10: ... .quad .LC88 .globl cli_ten_minutes_timeout .bss .align 4 .type cli_ten_minutes_timeout, @object .size cli_ten_minutes_timeout, 4 cli_ten_minutes_timeout: .zero 4 .globl cli_default_conn_timeout .align 4 .type cli_default_conn_timeout, @object .size cli_default_conn_timeout, 4 cli_default_conn_timeout: .zero 4 .text .Letext0: ... which is reflected in the .o file as (gcc-9): ... 0000000000000004 C cli_ten_minutes_timeout 0000000000000004 C cli_default_conn_timeout ... and (gcc-10): ... 0000000000000020 B cli_ten_minutes_timeout 0000000000000024 B cli_default_conn_timeout ... See nm(1) and ld(1) for a description C (common) and B (BSS) and how they are treated by the linker. Note: there is still a small chance that gcc-10 will land in Fedora-32, despite 31 Dec. 2019 having been the deadline for that to happen. Change-Id: I54ea485736a4910254eeb21222ad263721cdef3c Fixes: #1349 Signed-off-by: Kaleb S. KEITHLEY <> (cherry picked from commit f66bd85af09397300ad434655fc68861f48c2e3c)
2 files changed, 5 insertions, 2 deletions
diff --git a/cli/src/cli.c b/cli/src/cli.c
index 8a3f02dff15..16919738fcc 100644
--- a/cli/src/cli.c
+++ b/cli/src/cli.c
@@ -84,6 +84,9 @@ rpc_clnt_prog_t *cli_rpc_prog;
extern struct rpc_clnt_program cli_prog;
+int cli_default_conn_timeout = 120;
+int cli_ten_minutes_timeout = 600;
static int
glusterfs_ctx_defaults_init(glusterfs_ctx_t *ctx)
diff --git a/cli/src/cli.h b/cli/src/cli.h
index b79a0a235f3..2010451ddeb 100644
--- a/cli/src/cli.h
+++ b/cli/src/cli.h
@@ -39,8 +39,8 @@ enum argp_option_keys {
-int cli_default_conn_timeout;
-int cli_ten_minutes_timeout;
+extern int cli_default_conn_timeout;
+extern int cli_ten_minutes_timeout;
typedef enum {