From e9b78bd5580da8c610b030294f5222aa8874ab9b Mon Sep 17 00:00:00 2001 From: klzgrad Date: Sat, 29 Aug 2020 20:22:14 +0800 Subject: [PATCH] base: Disable trace event This allows builds with enable_base_tracing=false. --- src/base/trace_event/base_tracing_forward.h | 2 +- src/base/trace_event/memory_allocator_dump.h | 3 ++ src/base/trace_event/memory_dump_manager.h | 3 ++ src/base/trace_event/memory_dump_provider.h | 3 ++ src/base/trace_event/process_memory_dump.h | 3 ++ src/base/trace_event/trace_event.h | 3 ++ src/base/trace_event/trace_event_stub.cc | 4 ++ src/base/trace_event/trace_event_stub.h | 49 +++++++++++++++++--- src/base/trace_event/typed_macros.h | 2 + src/net/BUILD.gn | 2 - 10 files changed, 65 insertions(+), 9 deletions(-) diff --git a/src/base/trace_event/base_tracing_forward.h b/src/base/trace_event/base_tracing_forward.h index 825feaadf1..7b29f4dfb8 100644 --- a/src/base/trace_event/base_tracing_forward.h +++ b/src/base/trace_event/base_tracing_forward.h @@ -10,7 +10,7 @@ #include "base/tracing_buildflags.h" -#if BUILDFLAG(ENABLE_BASE_TRACING) +#if 1 #include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h" // nogncheck #else diff --git a/src/base/trace_event/memory_allocator_dump.h b/src/base/trace_event/memory_allocator_dump.h index 368804875a..f3154f1ab7 100644 --- a/src/base/trace_event/memory_allocator_dump.h +++ b/src/base/trace_event/memory_allocator_dump.h @@ -5,6 +5,8 @@ #ifndef BASE_TRACE_EVENT_MEMORY_ALLOCATOR_DUMP_H_ #define BASE_TRACE_EVENT_MEMORY_ALLOCATOR_DUMP_H_ +#include "base/trace_event/trace_event_stub.h" +#if 0 #include #include @@ -159,4 +161,5 @@ void BASE_EXPORT PrintTo(const MemoryAllocatorDump::Entry&, std::ostream*); } // namespace trace_event } // namespace base +#endif #endif // BASE_TRACE_EVENT_MEMORY_ALLOCATOR_DUMP_H_ diff --git a/src/base/trace_event/memory_dump_manager.h b/src/base/trace_event/memory_dump_manager.h index 0be89046c5..9a2657a8e0 100644 --- a/src/base/trace_event/memory_dump_manager.h +++ b/src/base/trace_event/memory_dump_manager.h @@ -5,6 +5,8 @@ #ifndef BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ #define BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ +#include "base/trace_event/trace_event_stub.h" +#if 0 #include #include @@ -267,4 +269,5 @@ class BASE_EXPORT MemoryDumpManager { } // namespace trace_event } // namespace base +#endif #endif // BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ diff --git a/src/base/trace_event/memory_dump_provider.h b/src/base/trace_event/memory_dump_provider.h index 52b54e6c97..af4f7de897 100644 --- a/src/base/trace_event/memory_dump_provider.h +++ b/src/base/trace_event/memory_dump_provider.h @@ -5,6 +5,8 @@ #ifndef BASE_TRACE_EVENT_MEMORY_DUMP_PROVIDER_H_ #define BASE_TRACE_EVENT_MEMORY_DUMP_PROVIDER_H_ +#include "base/trace_event/trace_event_stub.h" +#if 0 #include "base/base_export.h" #include "base/process/process_handle.h" #include "base/trace_event/memory_dump_request_args.h" @@ -48,4 +50,5 @@ class BASE_EXPORT MemoryDumpProvider { } // namespace trace_event } // namespace base +#endif #endif // BASE_TRACE_EVENT_MEMORY_DUMP_PROVIDER_H_ diff --git a/src/base/trace_event/process_memory_dump.h b/src/base/trace_event/process_memory_dump.h index 059fc25334..b4bff99358 100644 --- a/src/base/trace_event/process_memory_dump.h +++ b/src/base/trace_event/process_memory_dump.h @@ -5,6 +5,8 @@ #ifndef BASE_TRACE_EVENT_PROCESS_MEMORY_DUMP_H_ #define BASE_TRACE_EVENT_PROCESS_MEMORY_DUMP_H_ +#include "base/trace_event/trace_event_stub.h" +#if 0 #include #include @@ -295,4 +297,5 @@ class BASE_EXPORT ProcessMemoryDump { } // namespace trace_event } // namespace base +#endif #endif // BASE_TRACE_EVENT_PROCESS_MEMORY_DUMP_H_ diff --git a/src/base/trace_event/trace_event.h b/src/base/trace_event/trace_event.h index e1f29d8c7b..e7a26be741 100644 --- a/src/base/trace_event/trace_event.h +++ b/src/base/trace_event/trace_event.h @@ -5,6 +5,8 @@ #ifndef BASE_TRACE_EVENT_TRACE_EVENT_H_ #define BASE_TRACE_EVENT_TRACE_EVENT_H_ +#include "base/trace_event/trace_event_stub.h" +#if 0 // This header file defines implementation details of how the trace macros in // trace_event_common.h collect and store trace events. Anything not // implementation-specific should go in trace_event_common.h instead of here. @@ -793,4 +795,5 @@ class TraceScopedTrackableObject { } // namespace trace_event } // namespace base +#endif #endif // BASE_TRACE_EVENT_TRACE_EVENT_H_ diff --git a/src/base/trace_event/trace_event_stub.cc b/src/base/trace_event/trace_event_stub.cc index 8c40ae3463..ecadae09cf 100644 --- a/src/base/trace_event/trace_event_stub.cc +++ b/src/base/trace_event/trace_event_stub.cc @@ -6,6 +6,7 @@ #include +#include "base/trace_event/memory_usage_estimator.h" #include "base/trace_event/trace_event_stub.h" namespace base { @@ -20,6 +21,9 @@ MemoryDumpProvider::~MemoryDumpProvider() = default; // static constexpr const char* const MemoryDumpManager::kTraceCategory; +template size_t EstimateMemoryUsage(const std::string&); +template size_t EstimateMemoryUsage(const std::u16string&); + } // namespace trace_event } // namespace base diff --git a/src/base/trace_event/trace_event_stub.h b/src/base/trace_event/trace_event_stub.h index 9169fc69d7..a25f3d1321 100644 --- a/src/base/trace_event/trace_event_stub.h +++ b/src/base/trace_event/trace_event_stub.h @@ -12,6 +12,8 @@ #include #include "base/base_export.h" +#include "base/check.h" +#include "base/memory/ref_counted.h" #include "base/strings/string_piece.h" #include "base/trace_event/common/trace_event_common.h" #include "base/trace_event/memory_allocator_dump_guid.h" @@ -151,6 +153,41 @@ class BASE_EXPORT MemoryDumpProvider { MemoryDumpProvider() = default; }; +class BASE_EXPORT MemoryAllocatorDump { + public: + static constexpr char* kNameSize = nullptr; + static constexpr char* kNameObjectCount = nullptr; + static constexpr char* kUnitsBytes = nullptr; + static constexpr char* kUnitsObjects = nullptr; + static constexpr char* kTypeScalar = nullptr; + static constexpr char* kTypeString = nullptr; + void AddScalar(const char* name, const char* units, uint64_t value) {} + void AddString(const char* name, + const char* units, + const std::string& value) {} + const std::string& absolute_name() const { return absolute_name_; } + const MemoryAllocatorDumpGuid& guid() const { return guid_; } + + private: + const std::string absolute_name_; + MemoryAllocatorDumpGuid guid_; +}; + +class BASE_EXPORT ProcessMemoryDump { + public: + MemoryAllocatorDump* CreateAllocatorDump(const std::string& absolute_name) { + CHECK(false); + return nullptr; + } + MemoryAllocatorDump* GetAllocatorDump( + const std::string& absolute_name) const { + CHECK(false); + return nullptr; + } + void AddOwnershipEdge(const MemoryAllocatorDumpGuid& source, + const MemoryAllocatorDumpGuid& target) {} +}; + class BASE_EXPORT MemoryDumpManager { public: static constexpr const char* const kTraceCategory = @@ -168,19 +205,19 @@ class TracedArray; class TracedDictionary; class EventContext; -class StaticString { +class BASE_EXPORT StaticString { public: template StaticString(T) {} }; -class DynamicString { +class BASE_EXPORT DynamicString { public: template explicit DynamicString(T) {} }; -class TracedValue { +class BASE_EXPORT TracedValue { public: void WriteInt64(int64_t) && {} void WriteUInt64(uint64_t) && {} @@ -195,7 +232,7 @@ class TracedValue { TracedArray WriteArray() &&; }; -class TracedDictionary { +class BASE_EXPORT TracedDictionary { public: TracedValue AddItem(StaticString) { return TracedValue(); } TracedValue AddItem(DynamicString) { return TracedValue(); } @@ -211,7 +248,7 @@ class TracedDictionary { TracedArray AddArray(DynamicString); }; -class TracedArray { +class BASE_EXPORT TracedArray { public: TracedValue AppendItem() { return TracedValue(); } @@ -223,7 +260,7 @@ class TracedArray { }; template -void WriteIntoTracedValue(TracedValue, T&&) {} +BASE_EXPORT void WriteIntoTracedValue(TracedValue, T&&) {} namespace protos::pbzero { namespace SequenceManagerTask { diff --git a/src/base/trace_event/typed_macros.h b/src/base/trace_event/typed_macros.h index 32681189ce..20f3c2983e 100644 --- a/src/base/trace_event/typed_macros.h +++ b/src/base/trace_event/typed_macros.h @@ -11,6 +11,7 @@ // Needed not for this file, but for every user of the TRACE_EVENT macros for // the lambda definition. So included here for convenience. +#if 0 #include "base/tracing/protos/chrome_track_event.pbzero.h" #include "third_party/perfetto/include/perfetto/tracing/event_context.h" #include "third_party/perfetto/include/perfetto/tracing/string_helpers.h" @@ -97,4 +98,5 @@ ##__VA_ARGS__) #endif // !BUILDFLAG(USE_PERFETTO_CLIENT_LIBRARY) +#endif #endif // BASE_TRACE_EVENT_TYPED_MACROS_H_ diff --git a/src/net/BUILD.gn b/src/net/BUILD.gn index 329e04a489..57f941ec44 100644 --- a/src/net/BUILD.gn +++ b/src/net/BUILD.gn @@ -708,8 +708,6 @@ component("net") { "log/net_log_values.h", "log/net_log_with_source.cc", "log/net_log_with_source.h", - "log/trace_net_log_observer.cc", - "log/trace_net_log_observer.h", "nqe/cached_network_quality.cc", "nqe/cached_network_quality.h", "nqe/effective_connection_type.cc",