X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fsrc%2Fcommon%2FTracepointProvider.h;fp=src%2Fceph%2Fsrc%2Fcommon%2FTracepointProvider.h;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=97d3a0f763723fa0e906fd8ed1e4025b8613ea25;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/src/common/TracepointProvider.h b/src/ceph/src/common/TracepointProvider.h deleted file mode 100644 index 97d3a0f..0000000 --- a/src/ceph/src/common/TracepointProvider.h +++ /dev/null @@ -1,78 +0,0 @@ -// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- -// vim: ts=8 sw=2 smarttab - -#ifndef CEPH_TRACEPOINT_PROVIDER_H -#define CEPH_TRACEPOINT_PROVIDER_H - -#include "common/config_obs.h" -#include "common/Mutex.h" -#include - -struct md_config_t; - -class TracepointProvider : public md_config_obs_t, boost::noncopyable { -public: - struct Traits { - const char *library; - const char *config_key; - - Traits(const char *library, const char *config_key) - : library(library), config_key(config_key) { - } - }; - - class Singleton { - public: - Singleton(CephContext *cct, const char *library, const char *config_key) - : tracepoint_provider(new TracepointProvider(cct, library, config_key)) { - } - ~Singleton() { - delete tracepoint_provider; - } - - inline bool is_enabled() const { - return tracepoint_provider->m_handle != nullptr; - } - private: - TracepointProvider *tracepoint_provider; - }; - - template - class TypedSingleton : public Singleton { - public: - explicit TypedSingleton(CephContext *cct) - : Singleton(cct, traits.library, traits.config_key) { - } - }; - - TracepointProvider(CephContext *cct, const char *library, - const char *config_key); - ~TracepointProvider() override; - - template - static void initialize(CephContext *cct) { -#ifdef WITH_LTTNG - TypedSingleton *singleton; - cct->lookup_or_create_singleton_object(singleton, traits.library); -#endif - } - -protected: - const char** get_tracked_conf_keys() const override { - return m_config_keys; - } - void handle_conf_change(const struct md_config_t *conf, - const std::set &changed) override; - -private: - CephContext *m_cct; - std::string m_library; - mutable const char* m_config_keys[2]; - - Mutex m_lock; - void* m_handle = nullptr; - - void verify_config(const struct md_config_t *conf); -}; - -#endif // CEPH_TRACEPOINT_PROVIDER_H