diff --git a/src/common/read_config.c b/src/common/read_config.c
index 0c0fffe63b6c653cd09ee0aba700f934ba76f94a..2832d2b680b4f1f43b5099257419d514bc293f2b 100644
--- a/src/common/read_config.c
+++ b/src/common/read_config.c
@@ -117,7 +117,7 @@ typedef struct names_ll_s {
 	struct names_ll_s *next_alias;
 	struct names_ll_s *next_hostname;
 } names_ll_t;
-bool nodehash_initialized = false;
+static bool nodehash_initialized = false;
 static names_ll_t *host_to_node_hashtbl[NAME_HASH_LEN] = {NULL};
 static names_ll_t *node_to_host_hashtbl[NAME_HASH_LEN] = {NULL};
 
@@ -1100,7 +1100,7 @@ static int _get_hash_idx(const char *s)
 	int hash = 0, i;
 
 	if (s) {
-		for (i = 0; i < 20; i++) {
+		for (i = 0; i < 64; i++) {
 			if (s[i])
 				hash += (int) s[i];
 			else
diff --git a/src/slurmd/slurmd/slurmd.c b/src/slurmd/slurmd/slurmd.c
index 79d204156d885d33a1d04f2b47b5a30f3afdc673..6e896463aa06f1d8ae4ecdb271681524bcd753cc 100644
--- a/src/slurmd/slurmd/slurmd.c
+++ b/src/slurmd/slurmd/slurmd.c
@@ -147,7 +147,7 @@ static void      _msg_engine(void);
 static void      _print_conf(void);
 static void      _print_config(void);
 static void      _process_cmdline(int ac, char **av);
-static void      _read_config(void);
+static void      _read_config(bool reconfig);
 static void      _reconfigure(void);
 static void     *_registration_engine(void *arg);
 static int       _restore_cred_state(slurm_cred_ctx_t ctx);
@@ -700,13 +700,14 @@ _massage_pathname(char **path)
  * values into the slurmd configuration in preference of the defaults.
  */
 static void
-_read_config(void)
+_read_config(bool reconfig)
 {
 	char *path_pubkey = NULL;
 	slurm_ctl_conf_t *cf = NULL;
 	bool cr_flag = false, gang_flag = false;
 
-	slurm_conf_reinit(conf->conffile);
+	if (reconfig)
+		slurm_conf_reinit(conf->conffile);
 	cf = slurm_conf_lock();
 
 	slurm_mutex_lock(&conf->config_mutex);
@@ -850,7 +851,7 @@ _reconfigure(void)
 
 	_reconfig = 0;
 	_update_logging();
-	_read_config();
+	_read_config(true);
 
 	/*
 	 * Rebuild topology information and refresh slurmd topo infos
@@ -1197,7 +1198,7 @@ _slurmd_init(void)
 	 * Read global slurm config file, ovverride necessary values from
 	 * defaults and command line.
 	 */
-	_read_config();
+	_read_config(false);
 	cpu_cnt = MAX(conf->conf_cpus, conf->block_map_size);
 	if ((gres_plugin_init() != SLURM_SUCCESS) ||
 	    (gres_plugin_node_config_load(cpu_cnt) != SLURM_SUCCESS))