#include "common/debug.h"
#include "common/config.h"
#include "common/ceph_crypto.h"
-#include "common/lockdep.h"
#include "common/HeartbeatMap.h"
#include "common/errno.h"
#include "common/Graylog.h"
+#ifdef CEPH_DEBUG_MUTEX
+#include "common/lockdep.h"
+#endif
#include "log/Log.h"
#else // WITH_SEASTAR
namespace {
+#ifdef CEPH_DEBUG_MUTEX
class LockdepObs : public md_config_obs_t {
public:
explicit LockdepObs(CephContext *cct)
bool m_registered;
ceph::mutex lock;
};
+#endif // CEPH_DEBUG_MUTEX
class MempoolObs : public md_config_obs_t,
public AdminSocketHook {
_crypto_none(NULL),
_crypto_aes(NULL),
_plugin_registry(NULL),
+#ifdef CEPH_DEBUG_MUTEX
_lockdep_obs(NULL),
+#endif
crush_location(this)
{
_log = new ceph::logging::Log(&_conf->subsys);
_cct_obs = new CephContextObs(this);
_conf.add_observer(_cct_obs);
-
+#ifdef CEPH_DEBUG_MUTEX
_lockdep_obs = new LockdepObs(this);
_conf.add_observer(_lockdep_obs);
-
+#endif
_perf_counters_collection = new PerfCountersCollection(this);
_admin_socket = new AdminSocket(this);
_conf.remove_observer(_cct_obs);
delete _cct_obs;
_cct_obs = NULL;
-
+#ifdef CEPH_DEBUG_MUTEX
_conf.remove_observer(_lockdep_obs);
delete _lockdep_obs;
_lockdep_obs = NULL;
-
+#endif
_log->stop();
delete _log;
_log = NULL;
std::set<std::string> _experimental_features;
ceph::PluginRegistry* _plugin_registry;
-
+#ifdef CEPH_DEBUG_MUTEX
md_config_obs_t *_lockdep_obs;
-
+#endif
public:
TOPNSPC::crush::CrushLocation crush_location;
private: