]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: leave osd_lock locked in shutdown()
authorSage Weil <sage@inktank.com>
Wed, 16 Jan 2013 21:14:00 +0000 (13:14 -0800)
committerSage Weil <sage@inktank.com>
Wed, 27 Feb 2013 01:50:22 +0000 (17:50 -0800)
No callers expect the lock to be dropped.

Fixes: #3816
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 98a763123240803741ac9f67846b8f405f1b005b)

src/osd/OSD.cc

index e50050092501c7ff4667d4c47ef1423d6a399734..023bd9b3406e5d55752db005bc20b3860484c620 100644 (file)
@@ -1224,8 +1224,6 @@ int OSD::shutdown()
   hbserver_messenger->shutdown();
 
   monc->shutdown();
-
-  osd_lock.Unlock();
   return r;
 }
 
@@ -3456,7 +3454,8 @@ void OSD::_dispatch(Message *m)
     session = (Session *)m->get_connection()->get_priv();
     if (!session ||
        session->entity_name.is_mon() ||
-       session->entity_name.is_osd()) shutdown();
+       session->entity_name.is_osd())
+      shutdown();
     else dout(0) << "shutdown message from connection with insufficient privs!"
                 << m->get_connection() << dendl;
     m->put();