From 1f63307a339fcfe3045cc001a72d1ecc197a7010 Mon Sep 17 00:00:00 2001 From: shawn Date: Fri, 17 Jun 2016 01:45:58 -0400 Subject: [PATCH] librbd: optimize header file dependency & modify related file. Signed-off-by: Xiaowei Chen (cherry picked from commit 2185a6275c89d9462611e965da407ea0d504987d) --- src/common/event_socket.h | 1 + src/librbd/AioImageRequest.cc | 3 --- src/librbd/AioImageRequest.h | 1 + src/librbd/AioImageRequestWQ.h | 1 - src/librbd/AioObjectRequest.cc | 3 +-- src/librbd/AioObjectRequest.h | 4 ++-- src/librbd/AsyncObjectThrottle.cc | 2 -- src/librbd/AsyncObjectThrottle.h | 2 -- src/librbd/AsyncRequest.cc | 2 -- src/librbd/AsyncRequest.h | 1 - src/librbd/CopyupRequest.cc | 2 -- src/librbd/CopyupRequest.h | 3 --- src/librbd/DiffIterate.cc | 2 -- src/librbd/ExclusiveLock.h | 1 - src/librbd/ImageCtx.cc | 1 + src/librbd/ImageCtx.h | 7 ++----- src/librbd/ImageWatcher.cc | 5 ----- src/librbd/ImageWatcher.h | 5 +---- src/librbd/Journal.cc | 2 ++ src/librbd/Journal.h | 6 +++--- src/librbd/LibrbdWriteback.h | 5 ++--- src/librbd/MirroringWatcher.cc | 1 + src/librbd/MirroringWatcher.h | 5 ++++- src/librbd/ObjectMap.cc | 6 +++--- src/librbd/ObjectMap.h | 4 +++- src/librbd/Operations.cc | 1 + src/librbd/SnapInfo.h | 3 --- src/librbd/TaskFinisher.h | 2 -- src/librbd/Utils.h | 2 -- src/librbd/internal.cc | 5 ----- src/librbd/librbd.cc | 4 ---- 31 files changed, 28 insertions(+), 64 deletions(-) diff --git a/src/common/event_socket.h b/src/common/event_socket.h index 5c6b40bbd81ab..2f3db40e62cc5 100644 --- a/src/common/event_socket.h +++ b/src/common/event_socket.h @@ -18,6 +18,7 @@ #define CEPH_COMMON_EVENT_SOCKET_H #include "include/event_type.h" +#include class EventSocket { int socket; diff --git a/src/librbd/AioImageRequest.cc b/src/librbd/AioImageRequest.cc index 01e7689ee9d41..1c2a4b140c0f9 100644 --- a/src/librbd/AioImageRequest.cc +++ b/src/librbd/AioImageRequest.cc @@ -4,10 +4,7 @@ #include "librbd/AioImageRequest.h" #include "librbd/AioCompletion.h" #include "librbd/AioObjectRequest.h" -#include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" -#include "librbd/ImageState.h" -#include "librbd/ImageWatcher.h" #include "librbd/internal.h" #include "librbd/Journal.h" #include "librbd/journal/Types.h" diff --git a/src/librbd/AioImageRequest.h b/src/librbd/AioImageRequest.h index b95b5f9e741ec..b36c09b27132d 100644 --- a/src/librbd/AioImageRequest.h +++ b/src/librbd/AioImageRequest.h @@ -17,6 +17,7 @@ namespace librbd { class AioObjectRequest; class ImageCtx; +class AioCompletion; template class AioImageRequest { diff --git a/src/librbd/AioImageRequestWQ.h b/src/librbd/AioImageRequestWQ.h index 74b8438e7253a..42817c0d799ce 100644 --- a/src/librbd/AioImageRequestWQ.h +++ b/src/librbd/AioImageRequestWQ.h @@ -6,7 +6,6 @@ #include "include/Context.h" #include "include/atomic.h" -#include "common/Cond.h" #include "common/RWLock.h" #include "common/WorkQueue.h" #include diff --git a/src/librbd/AioObjectRequest.cc b/src/librbd/AioObjectRequest.cc index f550b0b49785e..934375ec04029 100644 --- a/src/librbd/AioObjectRequest.cc +++ b/src/librbd/AioObjectRequest.cc @@ -7,6 +7,7 @@ #include "common/Mutex.h" #include "common/RWLock.h" #include "common/WorkQueue.h" +#include "include/Context.h" #include "librbd/AioObjectRequest.h" #include "librbd/AioCompletion.h" @@ -14,8 +15,6 @@ #include "librbd/CopyupRequest.h" #include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" -#include "librbd/ImageWatcher.h" -#include "librbd/internal.h" #include "librbd/ObjectMap.h" #include "librbd/Utils.h" diff --git a/src/librbd/AioObjectRequest.h b/src/librbd/AioObjectRequest.h index 2e9226e9a2108..9647a3e698661 100644 --- a/src/librbd/AioObjectRequest.h +++ b/src/librbd/AioObjectRequest.h @@ -9,11 +9,11 @@ #include "common/snap_types.h" #include "include/buffer.h" -#include "include/Context.h" #include "include/rados/librados.hpp" -#include "include/rbd/librbd.hpp" #include "librbd/ObjectMap.h" +class Context; + namespace librbd { struct AioCompletion; diff --git a/src/librbd/AsyncObjectThrottle.cc b/src/librbd/AsyncObjectThrottle.cc index 3bf195c9c449a..99f0bfda3e7e8 100644 --- a/src/librbd/AsyncObjectThrottle.cc +++ b/src/librbd/AsyncObjectThrottle.cc @@ -1,12 +1,10 @@ // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- // vim: ts=8 sw=2 smarttab #include "librbd/AsyncObjectThrottle.h" -#include "include/rbd/librbd.hpp" #include "common/RWLock.h" #include "common/WorkQueue.h" #include "librbd/AsyncRequest.h" #include "librbd/ImageCtx.h" -#include "librbd/internal.h" #include "librbd/Utils.h" namespace librbd diff --git a/src/librbd/AsyncObjectThrottle.h b/src/librbd/AsyncObjectThrottle.h index 08f0199b5efb9..845e487579972 100644 --- a/src/librbd/AsyncObjectThrottle.h +++ b/src/librbd/AsyncObjectThrottle.h @@ -5,10 +5,8 @@ #include "include/int_types.h" #include "include/Context.h" -#include "common/RWLock.h" #include -#include "include/assert.h" namespace librbd { diff --git a/src/librbd/AsyncRequest.cc b/src/librbd/AsyncRequest.cc index a93eb502a21ca..c251143ba86ac 100644 --- a/src/librbd/AsyncRequest.cc +++ b/src/librbd/AsyncRequest.cc @@ -2,10 +2,8 @@ // vim: ts=8 sw=2 smarttab #include "librbd/AsyncRequest.h" #include "librbd/ImageCtx.h" -#include "librbd/internal.h" #include "librbd/Utils.h" #include "common/WorkQueue.h" -#include namespace librbd { diff --git a/src/librbd/AsyncRequest.h b/src/librbd/AsyncRequest.h index 3a1eb00531961..f74368dc644f6 100644 --- a/src/librbd/AsyncRequest.h +++ b/src/librbd/AsyncRequest.h @@ -3,7 +3,6 @@ #ifndef CEPH_LIBRBD_ASYNC_REQUEST_H #define CEPH_LIBRBD_ASYNC_REQUEST_H -#include "include/int_types.h" #include "include/Context.h" #include "include/rados/librados.hpp" #include "include/xlist.h" diff --git a/src/librbd/CopyupRequest.cc b/src/librbd/CopyupRequest.cc index 4c22f175fc4ab..da7c43ae286a0 100644 --- a/src/librbd/CopyupRequest.cc +++ b/src/librbd/CopyupRequest.cc @@ -13,8 +13,6 @@ #include "librbd/CopyupRequest.h" #include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" -#include "librbd/ImageWatcher.h" -#include "librbd/internal.h" #include "librbd/ObjectMap.h" #include "librbd/Utils.h" diff --git a/src/librbd/CopyupRequest.h b/src/librbd/CopyupRequest.h index 4d971d847952f..81cdc5b117ad1 100644 --- a/src/librbd/CopyupRequest.h +++ b/src/librbd/CopyupRequest.h @@ -5,10 +5,7 @@ #include "librbd/AsyncOperation.h" #include "include/int_types.h" - -#include "common/Mutex.h" #include "include/buffer.h" -#include "include/rados/librados.hpp" namespace librbd { diff --git a/src/librbd/DiffIterate.cc b/src/librbd/DiffIterate.cc index df8287d5c7181..9b0a3ac3daa86 100644 --- a/src/librbd/DiffIterate.cc +++ b/src/librbd/DiffIterate.cc @@ -3,13 +3,11 @@ #include "librbd/DiffIterate.h" #include "librbd/ImageCtx.h" -#include "librbd/internal.h" #include "librbd/ObjectMap.h" #include "librbd/Utils.h" #include "include/rados/librados.hpp" #include "include/interval_set.h" #include "common/errno.h" -#include "common/Mutex.h" #include "common/Throttle.h" #include "librados/snap_set_diff.h" #include diff --git a/src/librbd/ExclusiveLock.h b/src/librbd/ExclusiveLock.h index 0a2a88e294968..f901ea22bd5ce 100644 --- a/src/librbd/ExclusiveLock.h +++ b/src/librbd/ExclusiveLock.h @@ -8,7 +8,6 @@ #include "include/Context.h" #include "include/rados/librados.hpp" #include "common/Mutex.h" -#include "common/RWLock.h" #include #include #include diff --git a/src/librbd/ImageCtx.cc b/src/librbd/ImageCtx.cc index 868a8e3e2b7dd..f88d32d63b563 100644 --- a/src/librbd/ImageCtx.cc +++ b/src/librbd/ImageCtx.cc @@ -27,6 +27,7 @@ #include "librbd/Operations.h" #include "librbd/operation/ResizeRequest.h" #include "librbd/Utils.h" +#include "librbd/LibrbdWriteback.h" #include "osdc/Striper.h" #include diff --git a/src/librbd/ImageCtx.h b/src/librbd/ImageCtx.h index 3bd08966963ea..709987f7a33d6 100644 --- a/src/librbd/ImageCtx.h +++ b/src/librbd/ImageCtx.h @@ -7,18 +7,15 @@ #include #include -#include #include #include -#include -#include "common/Cond.h" #include "common/event_socket.h" #include "common/Mutex.h" #include "common/Readahead.h" #include "common/RWLock.h" #include "common/snap_types.h" -#include "include/atomic.h" + #include "include/buffer_fwd.h" #include "include/rbd/librbd.hpp" #include "include/rbd_types.h" @@ -28,7 +25,6 @@ #include "cls/rbd/cls_rbd_client.h" #include "librbd/AsyncRequest.h" -#include "librbd/LibrbdWriteback.h" #include "librbd/SnapInfo.h" #include "librbd/parent_types.h" @@ -51,6 +47,7 @@ namespace librbd { class LibrbdAdminSocketHook; class ObjectMap; template class Operations; + class LibrbdWriteback; namespace exclusive_lock { struct Policy; } namespace journal { struct Policy; } diff --git a/src/librbd/ImageWatcher.cc b/src/librbd/ImageWatcher.cc index 09b0195b2294d..78e2585ca3026 100644 --- a/src/librbd/ImageWatcher.cc +++ b/src/librbd/ImageWatcher.cc @@ -7,7 +7,6 @@ #include "librbd/ImageCtx.h" #include "librbd/ImageState.h" #include "librbd/internal.h" -#include "librbd/ObjectMap.h" #include "librbd/Operations.h" #include "librbd/TaskFinisher.h" #include "librbd/Utils.h" @@ -15,13 +14,9 @@ #include "librbd/image_watcher/Notifier.h" #include "librbd/image_watcher/NotifyLockOwner.h" #include "include/encoding.h" -#include "include/stringify.h" #include "common/errno.h" #include "common/WorkQueue.h" -#include #include -#include -#include #define dout_subsys ceph_subsys_rbd #undef dout_prefix diff --git a/src/librbd/ImageWatcher.h b/src/librbd/ImageWatcher.h index 0ae5245a23908..5182a972772d3 100644 --- a/src/librbd/ImageWatcher.h +++ b/src/librbd/ImageWatcher.h @@ -7,16 +7,13 @@ #include "common/Mutex.h" #include "common/RWLock.h" #include "include/Context.h" -#include "include/rados/librados.hpp" #include "include/rbd/librbd.hpp" #include "librbd/image_watcher/Notifier.h" #include "librbd/WatchNotifyTypes.h" #include #include #include -#include -#include -#include "include/assert.h" +#include class entity_name_t; diff --git a/src/librbd/Journal.cc b/src/librbd/Journal.cc index fe37fa1e87748..671553f5b830d 100644 --- a/src/librbd/Journal.cc +++ b/src/librbd/Journal.cc @@ -15,6 +15,8 @@ #include "common/errno.h" #include "common/Timer.h" #include "common/WorkQueue.h" +#include "include/rados/librados.hpp" + #include #define dout_subsys ceph_subsys_rbd diff --git a/src/librbd/Journal.h b/src/librbd/Journal.h index 76671ff8ba036..496c8819f9636 100644 --- a/src/librbd/Journal.h +++ b/src/librbd/Journal.h @@ -8,7 +8,6 @@ #include "include/atomic.h" #include "include/Context.h" #include "include/interval_set.h" -#include "include/rados/librados.hpp" #include "common/Mutex.h" #include "journal/Future.h" #include "journal/JournalMetadataListener.h" @@ -17,17 +16,18 @@ #include "librbd/journal/Types.h" #include "librbd/journal/TypeTraits.h" #include -#include #include #include #include -class Context; class ContextWQ; class SafeTimer; namespace journal { class Journaler; } +namespace librados { + class IoCtx; +} namespace librbd { diff --git a/src/librbd/LibrbdWriteback.h b/src/librbd/LibrbdWriteback.h index ef5fa75127b89..a7dc05f9c1343 100644 --- a/src/librbd/LibrbdWriteback.h +++ b/src/librbd/LibrbdWriteback.h @@ -5,13 +5,12 @@ #include -#include "include/Context.h" -#include "include/types.h" -#include "include/rados/librados.hpp" +#include "common/snap_types.h" #include "osd/osd_types.h" #include "osdc/WritebackHandler.h" class Mutex; +class Context; namespace librbd { diff --git a/src/librbd/MirroringWatcher.cc b/src/librbd/MirroringWatcher.cc index c414478fe32aa..a6f0a20dc315b 100644 --- a/src/librbd/MirroringWatcher.cc +++ b/src/librbd/MirroringWatcher.cc @@ -3,6 +3,7 @@ #include "librbd/MirroringWatcher.h" #include "include/rbd_types.h" +#include "include/rados/librados.hpp" #include "common/errno.h" #define dout_subsys ceph_subsys_rbd diff --git a/src/librbd/MirroringWatcher.h b/src/librbd/MirroringWatcher.h index f2ec61a6730aa..21285565d229c 100644 --- a/src/librbd/MirroringWatcher.h +++ b/src/librbd/MirroringWatcher.h @@ -5,12 +5,15 @@ #define CEPH_LIBRBD_MIRRORING_WATCHER_H #include "include/int_types.h" -#include "include/rados/librados.hpp" #include "cls/rbd/cls_rbd_types.h" #include "librbd/ImageCtx.h" #include "librbd/ObjectWatcher.h" #include "librbd/mirroring_watcher/Types.h" +namespace librados { + class IoCtx; +} + namespace librbd { template diff --git a/src/librbd/ObjectMap.cc b/src/librbd/ObjectMap.cc index ffdb90be55d40..b5d659ef8a2e8 100644 --- a/src/librbd/ObjectMap.cc +++ b/src/librbd/ObjectMap.cc @@ -3,9 +3,6 @@ #include "librbd/ObjectMap.h" #include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" -#include "librbd/ImageWatcher.h" -#include "librbd/internal.h" -#include "librbd/object_map/InvalidateRequest.h" #include "librbd/object_map/RefreshRequest.h" #include "librbd/object_map/ResizeRequest.h" #include "librbd/object_map/SnapshotCreateRequest.h" @@ -17,6 +14,9 @@ #include "common/dout.h" #include "common/errno.h" #include "common/WorkQueue.h" + +#include "include/rados/librados.hpp" + #include "cls/lock/cls_lock_client.h" #include "cls/rbd/cls_rbd_types.h" #include "include/stringify.h" diff --git a/src/librbd/ObjectMap.h b/src/librbd/ObjectMap.h index ef4b3bee5c377..5d99180e771a3 100644 --- a/src/librbd/ObjectMap.h +++ b/src/librbd/ObjectMap.h @@ -5,13 +5,15 @@ #include "include/int_types.h" #include "include/fs_types.h" -#include "include/rados/librados.hpp" #include "include/rbd/object_map_types.h" #include "common/bit_vector.hpp" #include class Context; class RWLock; +namespace librados { + class IoCtx; +} namespace librbd { diff --git a/src/librbd/Operations.cc b/src/librbd/Operations.cc index 6c9d9e72581a0..90bc53a96582c 100644 --- a/src/librbd/Operations.cc +++ b/src/librbd/Operations.cc @@ -5,6 +5,7 @@ #include "common/dout.h" #include "common/errno.h" #include "common/WorkQueue.h" + #include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" #include "librbd/ImageState.h" diff --git a/src/librbd/SnapInfo.h b/src/librbd/SnapInfo.h index 4a225a4625f7a..1babee9e550f2 100644 --- a/src/librbd/SnapInfo.h +++ b/src/librbd/SnapInfo.h @@ -5,9 +5,6 @@ #include "include/int_types.h" -#include "include/rados/librados.hpp" - -#include "cls/rbd/cls_rbd_client.h" #include "librbd/parent_types.h" namespace librbd { diff --git a/src/librbd/TaskFinisher.h b/src/librbd/TaskFinisher.h index f54681f4bb96e..e0aebd965f47f 100644 --- a/src/librbd/TaskFinisher.h +++ b/src/librbd/TaskFinisher.h @@ -3,7 +3,6 @@ #ifndef LIBRBD_TASK_FINISHER_H #define LIBRBD_TASK_FINISHER_H -#include "include/int_types.h" #include "include/Context.h" #include "common/Finisher.h" #include "common/Mutex.h" @@ -12,7 +11,6 @@ #include class CephContext; -class Context; namespace librbd { diff --git a/src/librbd/Utils.h b/src/librbd/Utils.h index 68fd94a6edffc..799bf0f8d3994 100644 --- a/src/librbd/Utils.h +++ b/src/librbd/Utils.h @@ -8,8 +8,6 @@ #include "include/Context.h" #include -class Context; - namespace librbd { class ImageCtx; diff --git a/src/librbd/internal.cc b/src/librbd/internal.cc index e726b9ef53667..a3b5ee20ff8c6 100644 --- a/src/librbd/internal.cc +++ b/src/librbd/internal.cc @@ -10,9 +10,7 @@ #include "common/ceph_context.h" #include "common/dout.h" #include "common/errno.h" -#include "common/ContextCompletion.h" #include "common/Throttle.h" -#include "common/WorkQueue.h" #include "common/event_socket.h" #include "cls/lock/cls_lock_client.h" #include "include/stringify.h" @@ -26,12 +24,10 @@ #include "librbd/AioImageRequest.h" #include "librbd/AioImageRequestWQ.h" #include "librbd/AioObjectRequest.h" -#include "librbd/CopyupRequest.h" #include "librbd/DiffIterate.h" #include "librbd/ExclusiveLock.h" #include "librbd/ImageCtx.h" #include "librbd/ImageState.h" -#include "librbd/ImageWatcher.h" #include "librbd/internal.h" #include "librbd/Journal.h" #include "librbd/journal/Types.h" @@ -45,7 +41,6 @@ #include "journal/Journaler.h" -#include #include #include #include "include/assert.h" diff --git a/src/librbd/librbd.cc b/src/librbd/librbd.cc index 71e031f86aa86..b71d5e8c3f646 100644 --- a/src/librbd/librbd.cc +++ b/src/librbd/librbd.cc @@ -15,14 +15,10 @@ #include -#include "common/Cond.h" #include "common/dout.h" #include "common/errno.h" -#include "common/snap_types.h" -#include "common/perf_counters.h" #include "common/TracepointProvider.h" #include "include/Context.h" -#include "osdc/ObjectCacher.h" #include "librbd/AioCompletion.h" #include "librbd/AioImageRequestWQ.h" -- 2.39.5