From 56689419a908eeba694eec19b1151df2f44bfe51 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Sun, 20 Jul 2014 21:14:04 -0700 Subject: [PATCH] osdc/Objecter: ignore messenger events before or after initalized Signed-off-by: Sage Weil --- src/osdc/Objecter.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/osdc/Objecter.cc b/src/osdc/Objecter.cc index a19f5748b015e..8ca3143e2474d 100644 --- a/src/osdc/Objecter.cc +++ b/src/osdc/Objecter.cc @@ -493,6 +493,9 @@ void Objecter::_linger_submit(LingerOp *info) bool Objecter::ms_dispatch(Message *m) { ldout(cct, 10) << __func__ << " " << cct << " " << *m << dendl; + if (!initialized.read()) + return false; + switch (m->get_type()) { // these we exlusively handle case CEPH_MSG_OSD_OPREPLY: @@ -3123,12 +3126,17 @@ void Objecter::_sg_read_finish(vector& extents, vector void Objecter::ms_handle_connect(Connection *con) { ldout(cct, 10) << "ms_handle_connect " << con << dendl; + if (!initialized.read()) + return; + if (con->get_peer_type() == CEPH_ENTITY_TYPE_MON) resend_mon_ops(); } bool Objecter::ms_handle_reset(Connection *con) { + if (!initialized.read()) + return false; if (con->get_peer_type() == CEPH_ENTITY_TYPE_OSD) { // int osd = osdmap->identify_osd(con->get_peer_addr()); @@ -3169,6 +3177,8 @@ bool Objecter::ms_get_authorizer(int dest_type, AuthAuthorizer **authorizer, bool force_new) { + if (!initialized.read()) + return false; if (dest_type == CEPH_ENTITY_TYPE_MON) return true; *authorizer = monc->auth->build_authorizer(dest_type); -- 2.39.5