Some of the finisher contexts would try to call into Objecter.
We mostly are protected from this by mds_lock+the stopping
flag, but at the Filer level there's no mds_lock, so in the
case of file size probing we have a problem.
Fixes: http://tracker.ceph.com/issues/19204
Signed-off-by: John Spray <john.spray@redhat.com>
purge_queue.shutdown();
+ mds_lock.Unlock();
+ finisher->stop(); // no flushing
+ mds_lock.Lock();
+
if (objecter->initialized.read())
objecter->shutdown();
// MDSDaemon::ms_handle_reset called from Messenger).
mds_lock.Unlock();
- finisher->stop(); // no flushing
-
// shut down messenger
messenger->shutdown();