summaryrefslogtreecommitdiff
path: root/src/ceph_mon.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/ceph_mon.cc')
-rw-r--r--src/ceph_mon.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/ceph_mon.cc b/src/ceph_mon.cc
index 6ac22ba20e5..35ed56a7985 100644
--- a/src/ceph_mon.cc
+++ b/src/ceph_mon.cc
@@ -542,15 +542,18 @@ int main(int argc, const char **argv)
if (g_conf->daemonize)
prefork.daemonize();
+ messenger->start();
+
+ mon->init();
+
// set up signal handlers, now that we've daemonized/forked.
init_async_signal_handler();
register_async_signal_handler(SIGHUP, sighup_handler);
register_async_signal_handler_oneshot(SIGINT, handle_mon_signal);
register_async_signal_handler_oneshot(SIGTERM, handle_mon_signal);
- messenger->start();
-
- mon->init();
+ if (g_conf->inject_early_sigterm)
+ kill(getpid(), SIGTERM);
messenger->wait();