diff --git a/src/slurmctld/controller.c b/src/slurmctld/controller.c
index 8c270cc70ed3a66aefb8338c43bb4a2ec3592e70..92a96a5e6c8bb9a48707f4f1115469cbb7c2f3ed 100644
--- a/src/slurmctld/controller.c
+++ b/src/slurmctld/controller.c
@@ -1422,8 +1422,10 @@ static void *_slurmctld_background(void *no_data)
 			if (_report_locks_set() == 0) {
 				info("Saving all slurm state");
 				save_all_state();
-			} else
-				error("can not save state, semaphores set");
+			} else {
+				error("Semaphores still set after %d seconds, "
+				      "can not save state", CONTROL_TIMEOUT);
+			}
 			break;
 		}
 
diff --git a/src/slurmctld/slurmctld.h b/src/slurmctld/slurmctld.h
index 8656436c43d46924ebadbf4a90c6e0057ec24854..7c20d6552cc8e737d8d12a746cefcb98dfd2522f 100644
--- a/src/slurmctld/slurmctld.h
+++ b/src/slurmctld/slurmctld.h
@@ -135,7 +135,7 @@
 
 /* Seconds to wait for backup controller response to REQUEST_CONTROL RPC */
 #ifndef CONTROL_TIMEOUT
-#define CONTROL_TIMEOUT 4	/* seconds */
+#define CONTROL_TIMEOUT 10	/* seconds */
 #endif
 
 /*****************************************************************************\