From 4b76c1d7f03de60528ba75e3858091516819b8d8 Mon Sep 17 00:00:00 2001 From: cxwshawn Date: Wed, 18 May 2016 11:53:52 +0800 Subject: [PATCH] OSD: optimize header file dependency to decreace compile time when modify any file OSD's left header dependency optimize. Signed-off-by: Xiaowei Chen --- src/osd/ClassHandler.cc | 4 ++-- src/osd/ClassHandler.h | 6 ++---- src/osd/OSD.cc | 4 ++-- src/osd/OSD.h | 18 ++++++------------ src/osd/OSDMap.cc | 4 ++-- src/osd/OSDMap.h | 11 ++++------- src/osd/PGLog.cc | 5 ++--- src/osd/PGLog.h | 3 ++- src/osd/Watch.h | 2 -- 9 files changed, 22 insertions(+), 35 deletions(-) diff --git a/src/osd/ClassHandler.cc b/src/osd/ClassHandler.cc index 5b39f96a569..64b6c51febd 100644 --- a/src/osd/ClassHandler.cc +++ b/src/osd/ClassHandler.cc @@ -2,10 +2,9 @@ // vim: ts=8 sw=2 smarttab #include "include/types.h" -#include "msg/Message.h" -#include "osd/OSD.h" #include "ClassHandler.h" #include "common/errno.h" +#include "common/ceph_context.h" #include @@ -16,6 +15,7 @@ #endif #include "common/config.h" +#include "common/debug.h" #define dout_subsys ceph_subsys_osd #undef dout_prefix diff --git a/src/osd/ClassHandler.h b/src/osd/ClassHandler.h index 3fe1f98d1a7..74f5b69e765 100644 --- a/src/osd/ClassHandler.h +++ b/src/osd/ClassHandler.h @@ -2,13 +2,11 @@ #define CEPH_CLASSHANDLER_H #include "include/types.h" - #include "objclass/objclass.h" - -#include "common/Cond.h" #include "common/Mutex.h" -#include "common/ceph_context.h" +//forward declaration +class CephContext; class ClassHandler { diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 646a2aebadf..bac252818cf 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -113,8 +113,10 @@ #include "common/perf_counters.h" #include "common/Timer.h" #include "common/LogClient.h" +#include "common/AsyncReserver.h" #include "common/HeartbeatMap.h" #include "common/admin_socket.h" +#include "common/ceph_context.h" #include "global/signal_handler.h" #include "global/pidfile.h" @@ -123,11 +125,9 @@ #include "perfglue/cpu_profiler.h" #include "perfglue/heap_profiler.h" -#include "osd/ClassHandler.h" #include "osd/OpRequest.h" #include "auth/AuthAuthorizeHandler.h" - #include "common/errno.h" #include "objclass/objclass.h" diff --git a/src/osd/OSD.h b/src/osd/OSD.h index 14fb6fb25ec..ba3caaca032 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -15,8 +15,6 @@ #ifndef CEPH_OSD_H #define CEPH_OSD_H -#include "boost/tuple/tuple.hpp" - #include "PG.h" #include "msg/Dispatcher.h" @@ -25,19 +23,15 @@ #include "common/RWLock.h" #include "common/Timer.h" #include "common/WorkQueue.h" -#include "common/LogClient.h" #include "common/AsyncReserver.h" -#include "common/ceph_context.h" - #include "os/ObjectStore.h" -#include "OSDCap.h" - +#include "OSDCap.h" + +#include "auth/KeyRing.h" #include "osd/ClassHandler.h" #include "include/CompatSet.h" -#include "auth/KeyRing.h" -#include "messages/MOSDRepScrub.h" #include "OpRequest.h" #include @@ -48,13 +42,11 @@ using namespace std; #include "include/unordered_map.h" -#include "Watch.h" #include "common/shared_cache.hpp" #include "common/simple_cache.hpp" #include "common/sharedptr_registry.hpp" #include "common/WeightedPriorityQueue.h" #include "common/PrioritizedQueue.h" -#include "common/OpQueue.h" #include "messages/MOSDOp.h" #include "include/Spinlock.h" @@ -222,8 +214,10 @@ class OpsFlightSocketHook; class HistoricOpsSocketHook; class TestOpsSocketHook; struct C_CompleteSplits; - +class LogChannel; +class CephContext; typedef ceph::shared_ptr SequencerRef; +class MOSDOp; class DeletingState { Mutex lock; diff --git a/src/osd/OSDMap.cc b/src/osd/OSDMap.cc index cf1c21528cb..25a47c53bdd 100644 --- a/src/osd/OSDMap.cc +++ b/src/osd/OSDMap.cc @@ -22,12 +22,12 @@ #include "common/TextTable.h" #include "include/ceph_features.h" #include "include/str_map.h" -#include "include/stringify.h" #include "common/code_environment.h" #include "crush/CrushTreeDumper.h" - +#include "common/Clock.h" + #define dout_subsys ceph_subsys_osd // ---------------------------------- diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 5446e3863cd..a358678c4a3 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -24,16 +24,11 @@ * disks, disk groups, total # osds, * */ -#include "common/config.h" #include "include/types.h" #include "osd_types.h" -#include "include/ceph_features.h" - +//#include "include/ceph_features.h" #include "crush/CrushWrapper.h" - -#include "include/interval_set.h" - #include #include #include @@ -41,7 +36,9 @@ #include "include/memory.h" using namespace std; - +//forward declaration +class CephContext; +class CrushWrapper; /* * we track up to two intervals during which the osd was alive and * healthy. the most recent is [up_from,up_thru), where up_thru is diff --git a/src/osd/PGLog.cc b/src/osd/PGLog.cc index e8f2a3ac49e..551638d6135 100644 --- a/src/osd/PGLog.cc +++ b/src/osd/PGLog.cc @@ -16,9 +16,8 @@ */ #include "PGLog.h" -#include "PG.h" -#include "SnapMapper.h" -#include "../include/unordered_map.h" +#include "include/unordered_map.h" +#include "common/ceph_context.h" #define dout_subsys ceph_subsys_osd #undef dout_prefix diff --git a/src/osd/PGLog.h b/src/osd/PGLog.h index 0083303bb72..27c0f38c576 100644 --- a/src/osd/PGLog.h +++ b/src/osd/PGLog.h @@ -21,7 +21,6 @@ #include "include/assert.h" #include "osd_types.h" #include "os/ObjectStore.h" -#include "common/ceph_context.h" #include using namespace std; @@ -30,6 +29,8 @@ using namespace std; #define PGLOG_INDEXED_EXTRA_CALLER_OPS (1 << 2) #define PGLOG_INDEXED_ALL (PGLOG_INDEXED_OBJECTS | PGLOG_INDEXED_CALLER_OPS | PGLOG_INDEXED_EXTRA_CALLER_OPS) +class CephContext; + struct PGLog : DoutPrefixProvider { DoutPrefixProvider *prefix_provider; string gen_prefix() const { diff --git a/src/osd/Watch.h b/src/osd/Watch.h index c6843ee785d..79b58e0dc9e 100644 --- a/src/osd/Watch.h +++ b/src/osd/Watch.h @@ -14,13 +14,11 @@ #ifndef CEPH_WATCH_H #define CEPH_WATCH_H -#include #include "include/memory.h" #include #include "msg/Messenger.h" #include "include/Context.h" -#include "common/Mutex.h" enum WatcherState { WATCHER_PENDING, -- 2.47.3