diff options
author | Sage Weil <sage@inktank.com> | 2012-11-18 17:34:35 +0100 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2012-11-18 17:34:35 +0100 |
commit | 288db95aa9617d392bbf2eca65d9c6535ca55c1b (patch) | |
tree | 921acce2216defc5b8881025fdd9c32b338e86e0 /src/ceph_mon.cc | |
parent | mon/AuthMonitor: refactor assign_global_id (diff) | |
download | ceph-288db95aa9617d392bbf2eca65d9c6535ca55c1b.tar.xz ceph-288db95aa9617d392bbf2eca65d9c6535ca55c1b.zip |
mon: shutdown async signal handler sooner
Before the mon, and lockdep, in particular.
#0 __pthread_mutex_lock (mutex=0x30) at pthread_mutex_lock.c:50
#1 0x0000000000816092 in ceph::log::Log::submit_entry (this=0x0, e=0x2f4a270) at log/Log.cc:138
#2 0x00000000007ee0f8 in handle_fatal_signal (signum=11) at global/signal_handler.cc:100
#3 <signal handler called>
#4 0x00000000008e1300 in lockdep_will_lock (name=0x959aa7 "SignalHandler::lock", id=17) at common/lockdep.cc:163
#5 0x00000000008867fc in Mutex::_will_lock (this=0x2f20428) at ./common/Mutex.h:56
#6 0x0000000000886605 in Mutex::Lock (this=0x2f20428, no_lockdep=false) at common/Mutex.cc:81
#7 0x00000000007eeb95 in SignalHandler::entry (this=0x2f20300) at global/signal_handler.cc:198
#8 0x00000000008b0bd1 in Thread::_entry_func (arg=0x2f20300) at common/Thread.cc:43
#9 0x00007f36fefd6b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#10 0x00007f36fd80b6dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()
#0 0x00007f36fefd7e75 in pthread_join (threadid=139874129766144, thread_return=0x0) at pthread_join.c:89
#1 0x00000000008b11ec in Thread::join (this=0x2f20300, prval=0x0) at common/Thread.cc:130
#2 0x00000000007eeae7 in SignalHandler::shutdown (this=0x2f20300) at global/signal_handler.cc:186
#3 0x00000000007ee9cf in SignalHandler::~SignalHandler (this=0x2f20300, __in_chrg=<optimized out>) at global/signal_handler.cc:175
#4 0x00000000007eea58 in SignalHandler::~SignalHandler (this=0x2f20300, __in_chrg=<optimized out>) at global/signal_handler.cc:176
#5 0x00000000007ee643 in shutdown_async_signal_handler () at global/signal_handler.cc:324
#6 0x00000000006de9d2 in main (argc=7, argv=0x7fffbfb8a1e8) at ceph_mon.cc:439
Signed-off-by: Sage Weil <sage@inktank.com>
Diffstat (limited to 'src/ceph_mon.cc')
-rw-r--r-- | src/ceph_mon.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ceph_mon.cc b/src/ceph_mon.cc index 186c4f6e426..da4529f2765 100644 --- a/src/ceph_mon.cc +++ b/src/ceph_mon.cc @@ -430,13 +430,14 @@ int main(int argc, const char **argv) unregister_async_signal_handler(SIGINT, handle_mon_signal); unregister_async_signal_handler(SIGTERM, handle_mon_signal); + shutdown_async_signal_handler(); + store.umount(); delete mon; delete messenger; delete client_throttler; delete daemon_throttler; g_ceph_context->put(); - shutdown_async_signal_handler(); // cd on exit, so that gmon.out (if any) goes into a separate directory for each node. char s[20]; |