summaryrefslogtreecommitdiff
path: root/src/mongo/util/signal_handlers.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/util/signal_handlers.cpp')
-rw-r--r--src/mongo/util/signal_handlers.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mongo/util/signal_handlers.cpp b/src/mongo/util/signal_handlers.cpp
index 229fd38ae6d..220631c9732 100644
--- a/src/mongo/util/signal_handlers.cpp
+++ b/src/mongo/util/signal_handlers.cpp
@@ -44,6 +44,7 @@
#include "mongo/platform/process_id.h"
#include "mongo/stdx/thread.h"
#include "mongo/util/assert_util.h"
+#include "mongo/util/concurrency/idle_thread_block.h"
#include "mongo/util/exit.h"
#include "mongo/util/log.h"
#include "mongo/util/quick_exit.h"
@@ -169,7 +170,10 @@ void signalProcessingThread(LogFileStatus rotate) {
while (true) {
int actualSignal = 0;
- int status = sigwait(&asyncSignals, &actualSignal);
+ int status = [&] {
+ IdleThreadBlock markIdle;
+ return sigwait(&asyncSignals, &actualSignal);
+ }();
fassert(16781, status == 0);
switch (actualSignal) {
case SIGUSR1: