From: Jason Dillaman Date: Wed, 8 Jan 2020 19:15:38 +0000 (-0500) Subject: rbd-mirror: renamed BaseRequest to CancelableRequest X-Git-Tag: v15.1.0~250^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ee6b1ab0763ba911d90838cc9526ac05cd25205c;p=ceph.git rbd-mirror: renamed BaseRequest to CancelableRequest This better reflects its purpose and the next commit will need a simple "base" request interface. Signed-off-by: Jason Dillaman --- diff --git a/src/tools/rbd_mirror/BaseRequest.h b/src/tools/rbd_mirror/BaseRequest.h deleted file mode 100644 index f1ebc0cf7e55..000000000000 --- a/src/tools/rbd_mirror/BaseRequest.h +++ /dev/null @@ -1,43 +0,0 @@ -// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- -// vim: ts=8 sw=2 smarttab - -#ifndef CEPH_RBD_MIRROR_BASE_REQUEST_H -#define CEPH_RBD_MIRROR_BASE_REQUEST_H - -#include "common/RefCountedObj.h" -#include "include/Context.h" - -namespace rbd { -namespace mirror { - -class BaseRequest : public RefCountedObject { -public: - BaseRequest(const std::string& name, CephContext *cct, Context *on_finish) - : RefCountedObject(cct), m_name(name), m_cct(cct), - m_on_finish(on_finish) { - } - - virtual void send() = 0; - virtual void cancel() {} - -protected: - virtual void finish(int r) { - if (m_cct) { - lsubdout(m_cct, rbd_mirror, 20) << m_name << "::finish: r=" << r << dendl; - } - if (m_on_finish) { - m_on_finish->complete(r); - } - put(); - } - -private: - const std::string m_name; - CephContext *m_cct; - Context *m_on_finish; -}; - -} // namespace mirror -} // namespace rbd - -#endif // CEPH_RBD_MIRROR_BASE_REQUEST_H diff --git a/src/tools/rbd_mirror/CancelableRequest.h b/src/tools/rbd_mirror/CancelableRequest.h new file mode 100644 index 000000000000..26e8dcb5b083 --- /dev/null +++ b/src/tools/rbd_mirror/CancelableRequest.h @@ -0,0 +1,44 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab + +#ifndef CEPH_RBD_MIRROR_CANCELABLE_REQUEST_H +#define CEPH_RBD_MIRROR_CANCELABLE_REQUEST_H + +#include "common/RefCountedObj.h" +#include "include/Context.h" + +namespace rbd { +namespace mirror { + +class CancelableRequest : public RefCountedObject { +public: + CancelableRequest(const std::string& name, CephContext *cct, + Context *on_finish) + : RefCountedObject(cct), m_name(name), m_cct(cct), + m_on_finish(on_finish) { + } + + virtual void send() = 0; + virtual void cancel() {} + +protected: + virtual void finish(int r) { + if (m_cct) { + lsubdout(m_cct, rbd_mirror, 20) << m_name << "::finish: r=" << r << dendl; + } + if (m_on_finish) { + m_on_finish->complete(r); + } + put(); + } + +private: + const std::string m_name; + CephContext *m_cct; + Context *m_on_finish; +}; + +} // namespace mirror +} // namespace rbd + +#endif // CEPH_RBD_MIRROR_CANCELABLE_REQUEST_H diff --git a/src/tools/rbd_mirror/ImageSync.cc b/src/tools/rbd_mirror/ImageSync.cc index f9d8f357e42e..3ec9c6295aa2 100644 --- a/src/tools/rbd_mirror/ImageSync.cc +++ b/src/tools/rbd_mirror/ImageSync.cc @@ -55,7 +55,8 @@ ImageSync::ImageSync( InstanceWatcher *instance_watcher, ProgressContext *progress_ctx, Context *on_finish) - : BaseRequest("rbd::mirror::ImageSync", local_image_ctx->cct, on_finish), + : CancelableRequest("rbd::mirror::ImageSync", local_image_ctx->cct, + on_finish), m_threads(threads), m_local_image_ctx(local_image_ctx), m_remote_image_ctx(remote_image_ctx), @@ -107,7 +108,7 @@ void ImageSync::send_notify_sync_request() { m_lock.lock(); if (m_canceled) { m_lock.unlock(); - BaseRequest::finish(-ECANCELED); + CancelableRequest::finish(-ECANCELED); return; } @@ -129,7 +130,7 @@ void ImageSync::handle_notify_sync_request(int r) { m_lock.unlock(); if (r < 0) { - BaseRequest::finish(r); + CancelableRequest::finish(r); return; } @@ -456,7 +457,7 @@ void ImageSync::finish(int r) { dout(20) << ": r=" << r << dendl; m_instance_watcher->notify_sync_complete(m_local_image_ctx->id); - BaseRequest::finish(r); + CancelableRequest::finish(r); } } // namespace mirror diff --git a/src/tools/rbd_mirror/ImageSync.h b/src/tools/rbd_mirror/ImageSync.h index eebb1273d3db..066273232706 100644 --- a/src/tools/rbd_mirror/ImageSync.h +++ b/src/tools/rbd_mirror/ImageSync.h @@ -8,7 +8,7 @@ #include "librbd/ImageCtx.h" #include "librbd/Types.h" #include "common/ceph_mutex.h" -#include "tools/rbd_mirror/BaseRequest.h" +#include "tools/rbd_mirror/CancelableRequest.h" #include "tools/rbd_mirror/image_sync/Types.h" class Context; @@ -27,7 +27,7 @@ template class Threads; namespace image_sync { struct SyncPointHandler; } template -class ImageSync : public BaseRequest { +class ImageSync : public CancelableRequest { public: static ImageSync* create( Threads* threads, diff --git a/src/tools/rbd_mirror/image_replayer/BootstrapRequest.cc b/src/tools/rbd_mirror/image_replayer/BootstrapRequest.cc index 06920de95338..6ebff843131e 100644 --- a/src/tools/rbd_mirror/image_replayer/BootstrapRequest.cc +++ b/src/tools/rbd_mirror/image_replayer/BootstrapRequest.cc @@ -62,8 +62,9 @@ BootstrapRequest::BootstrapRequest( Journaler** remote_journaler, bool* do_resync, Context* on_finish) - : BaseRequest("rbd::mirror::image_replayer::BootstrapRequest", - reinterpret_cast(local_io_ctx.cct()), on_finish), + : CancelableRequest("rbd::mirror::image_replayer::BootstrapRequest", + reinterpret_cast(local_io_ctx.cct()), + on_finish), m_threads(threads), m_local_io_ctx(local_io_ctx), m_remote_io_ctx(remote_io_ctx), diff --git a/src/tools/rbd_mirror/image_replayer/BootstrapRequest.h b/src/tools/rbd_mirror/image_replayer/BootstrapRequest.h index 8e9f868a1f6b..91093df41b55 100644 --- a/src/tools/rbd_mirror/image_replayer/BootstrapRequest.h +++ b/src/tools/rbd_mirror/image_replayer/BootstrapRequest.h @@ -12,7 +12,7 @@ #include "librbd/journal/Types.h" #include "librbd/journal/TypeTraits.h" #include "librbd/mirror/Types.h" -#include "tools/rbd_mirror/BaseRequest.h" +#include "tools/rbd_mirror/CancelableRequest.h" #include "tools/rbd_mirror/Types.h" #include #include @@ -39,7 +39,7 @@ namespace image_replayer { namespace journal { template class StateBuilder; } template -class BootstrapRequest : public BaseRequest { +class BootstrapRequest : public CancelableRequest { public: typedef librbd::journal::TypeTraits TypeTraits; typedef typename TypeTraits::Journaler Journaler;