}
template <typename I>
-void InstanceReplayer<I>::start_image_replayers(int r) {
- dout(10) << dendl;
-
- std::lock_guard locker{m_lock};
+void InstanceReplayer<I>::start_image_replayers(
+ const std::unique_lock<ceph::mutex>&) {
if (m_on_shut_down != nullptr) {
- m_async_op_tracker.finish_op();
return;
}
m_service_daemon->add_or_update_namespace_attribute(
m_local_io_ctx.get_id(), m_local_io_ctx.get_namespace(),
SERVICE_DAEMON_ERROR_COUNT_KEY, error_count);
+}
+template <typename I>
+void InstanceReplayer<I>::start_image_replayers(int r) {
+ dout(10) << dendl;
+ {
+ std::unique_lock locker{m_lock};
+ start_image_replayers(locker);
+ }
m_async_op_tracker.finish_op();
}
void start_image_replayer(ImageReplayer<ImageCtxT> *image_replayer);
void queue_start_image_replayers();
+ void start_image_replayers(const std::unique_lock<ceph::mutex>&);
void start_image_replayers(int r);
void stop_image_replayer(ImageReplayer<ImageCtxT> *image_replayer,