Remove the task tracking stuff in the bindings. This basically reverts 56a09bd92b33edc7b81a9c52ce35744cf33ff444. R=jamesr@chromium.org Review URL: https://codereview.chromium.org/1426843004 .
diff --git a/mojo/BUILD.gn b/mojo/BUILD.gn index 91bada4..c01cee0 100644 --- a/mojo/BUILD.gn +++ b/mojo/BUILD.gn
@@ -66,7 +66,6 @@ "//mojo/dart/embedder/test:dart_unittests", "//mojo/public/cpp/bindings/tests:versioning_apptests", "//mojo/services/view_manager/cpp/tests:mojo_view_manager_lib_unittests", - "//mojo/tests:mojo_task_tracker_perftests", "//mojo/tools:message_generator", "//mojo/gles2:mgl_unittests", "//mojo/gpu:apptests",
diff --git a/mojo/common/BUILD.gn b/mojo/common/BUILD.gn index 56bedf3..adac158 100644 --- a/mojo/common/BUILD.gn +++ b/mojo/common/BUILD.gn
@@ -10,8 +10,6 @@ "binding_set.h", "interface_ptr_set.h", "strong_binding_set.h", - "task_tracker.cc", - "task_tracker.h", ] deps = [ @@ -28,7 +26,6 @@ "callback_binding_unittest.cc", "interface_ptr_set_unittest.cc", "strong_binding_set_unittest.cc", - "task_tracker_unittest.cc", ] deps = [
diff --git a/mojo/common/task_tracker.cc b/mojo/common/task_tracker.cc deleted file mode 100644 index 8665799..0000000 --- a/mojo/common/task_tracker.cc +++ /dev/null
@@ -1,102 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/common/task_tracker.h" - -#include <vector> - -#include "base/location.h" -#include "base/logging.h" -#include "base/macros.h" -#include "base/threading/thread_local.h" -#include "base/tracked_objects.h" - -namespace mojo { -namespace common { - -namespace { - -class TrackingActivation { - public: - TrackingActivation() : birth_(nullptr) {} - - bool Start(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter); - void End(); - bool IsAlive() const { return birth_ != nullptr; } - - private: - tracked_objects::TaskStopwatch* stopwatch() { - return reinterpret_cast<tracked_objects::TaskStopwatch*>(stopwatch_heap_); - } - - tracked_objects::Births* birth_; - // TaskStopwatch isn't copyable, but we don't want to allocate it on the heap - // so as not to slow things down, hence replacement new. - char stopwatch_heap_[sizeof(tracked_objects::TaskStopwatch)]; - - DISALLOW_COPY_AND_ASSIGN(TrackingActivation); -}; - -bool TrackingActivation::Start(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter) { - // So far we don't track nested invocations. - if (IsAlive()) - return false; - birth_ = tracked_objects::ThreadData::TallyABirthIfActive( - tracked_objects::Location(function_name, file_name, line_number, - program_counter)); - if (!birth_) - return false; - - (new (stopwatch()) tracked_objects::TaskStopwatch())->Start(); - return true; -} - -void TrackingActivation::End() { - DCHECK(IsAlive()); - stopwatch()->Stop(); - tracked_objects::ThreadData::TallyRunInAScopedRegionIfTracking(birth_, - *stopwatch()); - stopwatch()->tracked_objects::TaskStopwatch::~TaskStopwatch(); - birth_ = nullptr; -} - -base::ThreadLocalPointer<TrackingActivation> g_activation; - -} // namespace - -// static -intptr_t TaskTracker::StartTracking(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter) { - TrackingActivation* activation = g_activation.Get(); - if (!activation) { - // Leak this. - activation = new TrackingActivation(); - g_activation.Set(activation); - } - - if (!activation->Start(function_name, file_name, line_number, - program_counter)) - return 0; - return reinterpret_cast<intptr_t>(activation); -} - -// static -void TaskTracker::EndTracking(intptr_t id) { - if (0 == id) - return; - // |EndTracking()| must be called from the same thread of |StartTracking()|. - DCHECK_EQ(reinterpret_cast<TrackingActivation*>(id), g_activation.Get()); - reinterpret_cast<TrackingActivation*>(id)->End(); -} - -} // namespace common -} // namespace mojo
diff --git a/mojo/common/task_tracker.h b/mojo/common/task_tracker.h deleted file mode 100644 index 7886636..0000000 --- a/mojo/common/task_tracker.h +++ /dev/null
@@ -1,26 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MOJO_COMMON_TASK_TRACKER_H_ -#define MOJO_COMMON_TASK_TRACKER_H_ - -#include <stdint.h> - -namespace mojo { -namespace common { - -class TaskTracker { - public: - static intptr_t StartTracking(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter); - static void EndTracking(intptr_t id); - static void Enable(); -}; - -} // namespace common -} // namespace mojo - -#endif // MOJO_COMMON_TASK_TRACKER_H_
diff --git a/mojo/common/task_tracker_unittest.cc b/mojo/common/task_tracker_unittest.cc deleted file mode 100644 index 090e586..0000000 --- a/mojo/common/task_tracker_unittest.cc +++ /dev/null
@@ -1,54 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/common/task_tracker.h" - -#include "base/tracked_objects.h" -#include "testing/gtest/include/gtest/gtest.h" - -namespace mojo { -namespace common { -namespace test { - -class TaskTrackerTest : public testing::Test { - public: - void SetUp() override { - tracked_objects::ThreadData::InitializeAndSetTrackingStatus( - tracked_objects::ThreadData::PROFILING_ACTIVE); - } - - void TearDown() override { - tracked_objects::ThreadData::InitializeAndSetTrackingStatus( - tracked_objects::ThreadData::DEACTIVATED); - } -}; - -TEST_F(TaskTrackerTest, Nesting) { - intptr_t id0 = TaskTracker::StartTracking("Foo", "foo.cc", 1, nullptr); - intptr_t id1 = TaskTracker::StartTracking("Bar", "bar.cc", 1, nullptr); - TaskTracker::EndTracking(id1); - TaskTracker::EndTracking(id0); - - tracked_objects::ProcessDataSnapshot snapshot; - tracked_objects::ThreadData::Snapshot(0, &snapshot); - - // Nested one is ignored. - EXPECT_EQ(1U, snapshot.phased_snapshots[0].tasks.size()); -} - -TEST_F(TaskTrackerTest, Twice) { - intptr_t id0 = TaskTracker::StartTracking("Foo", "foo.cc", 1, nullptr); - TaskTracker::EndTracking(id0); - intptr_t id1 = TaskTracker::StartTracking("Bar", "bar.cc", 1, nullptr); - TaskTracker::EndTracking(id1); - - tracked_objects::ProcessDataSnapshot snapshot; - tracked_objects::ThreadData::Snapshot(0, &snapshot); - - EXPECT_EQ(2U, snapshot.phased_snapshots[0].tasks.size()); -} - -} // namespace test -} // namespace common -} // namespace mojo
diff --git a/mojo/environment/BUILD.gn b/mojo/environment/BUILD.gn index 5c7a9f0..2bf0c58 100644 --- a/mojo/environment/BUILD.gn +++ b/mojo/environment/BUILD.gn
@@ -8,16 +8,12 @@ "default_async_waiter.h", "default_logger.cc", "default_logger.h", - "default_task_tracker.cc", - "default_task_tracker.h", "environment.cc", # TODO(vtl): This is kind of ugly. (See TODO in logging.h.) "../public/cpp/environment/async_waiter.h", "../public/cpp/environment/lib/async_waiter.cc", "../public/cpp/environment/lib/logging.cc", - "../public/cpp/environment/lib/scoped_task_tracking.cc", - "../public/cpp/environment/lib/scoped_task_tracking.h", "../public/cpp/environment/logging.h", ]
diff --git a/mojo/environment/default_task_tracker.cc b/mojo/environment/default_task_tracker.cc deleted file mode 100644 index eb7cccf..0000000 --- a/mojo/environment/default_task_tracker.cc +++ /dev/null
@@ -1,48 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/environment/default_task_tracker.h" - -#include "base/logging.h" -#include "mojo/common/task_tracker.h" -#include "mojo/public/cpp/environment/task_tracker.h" - -namespace mojo { -namespace internal { -namespace { - -bool g_enabled = false; - -TaskTrackingId StartTracking(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter) { - if (!g_enabled) - return TaskTrackingId(0); - - return common::TaskTracker::StartTracking(function_name, file_name, - line_number, program_counter); -} - -void EndTracking(const TaskTrackingId id) { - if (!g_enabled) { - DCHECK_EQ(0, id); - return; - } - - common::TaskTracker::EndTracking(id); -} - -void SetEnabled(bool enabled) { - g_enabled = enabled; -} - -} // namespace - -const TaskTracker kDefaultTaskTracker = {&StartTracking, - &EndTracking, - &SetEnabled}; - -} // namespace internal -} // namespace mojo
diff --git a/mojo/environment/default_task_tracker.h b/mojo/environment/default_task_tracker.h deleted file mode 100644 index f1f43e5..0000000 --- a/mojo/environment/default_task_tracker.h +++ /dev/null
@@ -1,19 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MOJO_ENVIRONMENT_DEFAULT_TASK_TRACKER_H_ -#define MOJO_ENVIRONMENT_DEFAULT_TASK_TRACKER_H_ - -namespace mojo { - -struct TaskTracker; - -namespace internal { - -extern const TaskTracker kDefaultTaskTracker; - -} // namespace internal -} // namespace mojo - -#endif // MOJO_ENVIRONMENT_DEFAULT_TASK_TRACKER_H_
diff --git a/mojo/environment/environment.cc b/mojo/environment/environment.cc index a5a424c..562bfe4 100644 --- a/mojo/environment/environment.cc +++ b/mojo/environment/environment.cc
@@ -7,7 +7,6 @@ #include "base/message_loop/message_loop.h" #include "mojo/environment/default_async_waiter.h" #include "mojo/environment/default_logger.h" -#include "mojo/environment/default_task_tracker.h" namespace mojo { @@ -36,11 +35,6 @@ } // static -const TaskTracker* Environment::GetDefaultTaskTracker() { - return &internal::kDefaultTaskTracker; -} - -// static void Environment::InstantiateDefaultRunLoop() { CHECK(!base::MessageLoop::current()); // Not leaked: accessible from |base::MessageLoop::current()|.
diff --git a/mojo/public/cpp/environment/BUILD.gn b/mojo/public/cpp/environment/BUILD.gn index 9cfd496..d6b3e4a 100644 --- a/mojo/public/cpp/environment/BUILD.gn +++ b/mojo/public/cpp/environment/BUILD.gn
@@ -9,7 +9,6 @@ "async_waiter.h", "environment.h", "logging.h", - "task_tracker.h", ] mojo_sdk_public_deps = [ "mojo/public/c/environment" ] @@ -27,12 +26,8 @@ "lib/default_async_waiter.h", "lib/default_logger.cc", "lib/default_logger.h", - "lib/default_task_tracker.cc", - "lib/default_task_tracker.h", "lib/environment.cc", "lib/logging.cc", - "lib/scoped_task_tracking.cc", - "lib/scoped_task_tracking.h", ] public_deps = [
diff --git a/mojo/public/cpp/environment/environment.h b/mojo/public/cpp/environment/environment.h index 3a54428..ce3f7d0 100644 --- a/mojo/public/cpp/environment/environment.h +++ b/mojo/public/cpp/environment/environment.h
@@ -12,8 +12,6 @@ namespace mojo { -struct TaskTracker; - // Other parts of the Mojo C++ APIs use the *static* methods of this class. // // The "standalone" implementation of this class requires that this class (in @@ -28,13 +26,11 @@ // This constructor allows the standard implementations to be overridden (set // a parameter to null to get the standard implementation). Environment(const MojoAsyncWaiter* default_async_waiter, - const MojoLogger* default_logger, - const TaskTracker* default_task_tracker); + const MojoLogger* default_logger); ~Environment(); static const MojoAsyncWaiter* GetDefaultAsyncWaiter(); static const MojoLogger* GetDefaultLogger(); - static const TaskTracker* GetDefaultTaskTracker(); // These instantiate and destroy an environment-specific run loop for the // current thread, allowing |GetDefaultAsyncWaiter()| to be used. (The run
diff --git a/mojo/public/cpp/environment/lib/default_task_tracker.cc b/mojo/public/cpp/environment/lib/default_task_tracker.cc deleted file mode 100644 index a99f1c7..0000000 --- a/mojo/public/cpp/environment/lib/default_task_tracker.cc +++ /dev/null
@@ -1,40 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/public/cpp/environment/lib/default_task_tracker.h" - -#include "mojo/public/cpp/environment/task_tracker.h" - -namespace mojo { - -namespace { - -// -// The standalone task tracker does nothing. -// - -TaskTrackingId StartTracking(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter) { - return TaskTrackingId(0); -} - -void EndTracking(const TaskTrackingId id) { -} - -void SetEnabled(bool enabled) { -} - -} // namespace - -namespace internal { - -const TaskTracker kDefaultTaskTracker = {&StartTracking, - &EndTracking, - &SetEnabled}; - -} // namespace internal - -} // namespace mojo
diff --git a/mojo/public/cpp/environment/lib/default_task_tracker.h b/mojo/public/cpp/environment/lib/default_task_tracker.h deleted file mode 100644 index 7a0c064..0000000 --- a/mojo/public/cpp/environment/lib/default_task_tracker.h +++ /dev/null
@@ -1,19 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MOJO_PUBLIC_CPP_ENVIRONMENT_LIB_DEFAULT_TASK_TRACKER_H_ -#define MOJO_PUBLIC_CPP_ENVIRONMENT_LIB_DEFAULT_TASK_TRACKER_H_ - -namespace mojo { - -struct TaskTracker; - -namespace internal { - -extern const TaskTracker kDefaultTaskTracker; - -} // namespace internal -} // namespace mojo - -#endif // MOJO_PUBLIC_CPP_ENVIRONMENT_LIB_DEFAULT_TASK_TRACKER_H_
diff --git a/mojo/public/cpp/environment/lib/environment.cc b/mojo/public/cpp/environment/lib/environment.cc index 8c7c930..6fb7e22 100644 --- a/mojo/public/cpp/environment/lib/environment.cc +++ b/mojo/public/cpp/environment/lib/environment.cc
@@ -9,7 +9,6 @@ #include "mojo/public/c/environment/logger.h" #include "mojo/public/cpp/environment/lib/default_async_waiter.h" #include "mojo/public/cpp/environment/lib/default_logger.h" -#include "mojo/public/cpp/environment/lib/default_task_tracker.h" #include "mojo/public/cpp/utility/run_loop.h" namespace mojo { @@ -18,34 +17,27 @@ const MojoAsyncWaiter* g_default_async_waiter = nullptr; const MojoLogger* g_default_logger = nullptr; -const TaskTracker* g_default_task_tracker = nullptr; void Init(const MojoAsyncWaiter* default_async_waiter, - const MojoLogger* default_logger, - const TaskTracker* default_task_tracker) { + const MojoLogger* default_logger) { g_default_async_waiter = default_async_waiter ? default_async_waiter : &internal::kDefaultAsyncWaiter; g_default_logger = default_logger ? default_logger : &internal::kDefaultLogger; - g_default_task_tracker = default_task_tracker - ? default_task_tracker - : &internal::kDefaultTaskTracker; - RunLoop::SetUp(); } } // namespace Environment::Environment() { - Init(nullptr, nullptr, nullptr); + Init(nullptr, nullptr); } Environment::Environment(const MojoAsyncWaiter* default_async_waiter, - const MojoLogger* default_logger, - const TaskTracker* default_task_tracker) { - Init(default_async_waiter, default_logger, default_task_tracker); + const MojoLogger* default_logger) { + Init(default_async_waiter, default_logger); } Environment::~Environment() { @@ -70,11 +62,6 @@ } // static -const TaskTracker* Environment::GetDefaultTaskTracker() { - return g_default_task_tracker; -} - -// static void Environment::InstantiateDefaultRunLoop() { assert(!RunLoop::current()); // Not leaked: accessible from |RunLoop::current()|.
diff --git a/mojo/public/cpp/environment/lib/logging_only_environment.cc b/mojo/public/cpp/environment/lib/logging_only_environment.cc index b6b97e6..22ea801 100644 --- a/mojo/public/cpp/environment/lib/logging_only_environment.cc +++ b/mojo/public/cpp/environment/lib/logging_only_environment.cc
@@ -15,8 +15,7 @@ Environment::Environment() {} Environment::Environment(const MojoAsyncWaiter* default_async_waiter, - const MojoLogger* default_logger, - const TaskTracker* default_task_tracker) {} + const MojoLogger* default_logger) {} Environment::~Environment() {} @@ -31,11 +30,6 @@ } // static -const TaskTracker* Environment::GetDefaultTaskTracker() { - return nullptr; -} - -// static void Environment::InstantiateDefaultRunLoop() {} // static
diff --git a/mojo/public/cpp/environment/lib/scoped_task_tracking.cc b/mojo/public/cpp/environment/lib/scoped_task_tracking.cc deleted file mode 100644 index 9e253d5..0000000 --- a/mojo/public/cpp/environment/lib/scoped_task_tracking.cc +++ /dev/null
@@ -1,37 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/public/cpp/environment/lib/scoped_task_tracking.h" - -#include "mojo/public/cpp/environment/environment.h" - -namespace mojo { -namespace internal { - -ScopedTaskTracking::ScopedTaskTracking(const char* function_name, - const char* file_name, - int line, - const void* program_counter) - : id_(Environment::GetDefaultTaskTracker()->StartTracking( - function_name, - file_name, - line, - program_counter)) { -} - -ScopedTaskTracking::ScopedTaskTracking(const char* function_name, - const char* file_name, - int line) - : id_(Environment::GetDefaultTaskTracker()->StartTracking(function_name, - file_name, - line, - nullptr)) { -} - -ScopedTaskTracking::~ScopedTaskTracking() { - Environment::GetDefaultTaskTracker()->EndTracking(id_); -} - -} // namespace internal -} // namespace mojo
diff --git a/mojo/public/cpp/environment/lib/scoped_task_tracking.h b/mojo/public/cpp/environment/lib/scoped_task_tracking.h deleted file mode 100644 index 1b0411e..0000000 --- a/mojo/public/cpp/environment/lib/scoped_task_tracking.h +++ /dev/null
@@ -1,34 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MOJO_PUBLIC_CPP_ENVIRONMENT_LIB_SCOPED_TASK_TRACKING_H_ -#define MOJO_PUBLIC_CPP_ENVIRONMENT_LIB_SCOPED_TASK_TRACKING_H_ - -#include "mojo/public/cpp/environment/task_tracker.h" -#include "mojo/public/cpp/system/macros.h" - -namespace mojo { -namespace internal { - -// An RAII wrapper for |TaskTrackingId|. -class ScopedTaskTracking { - public: - ScopedTaskTracking(const char* function_name, - const char* file_name, - int line, - const void* program_counter); - ScopedTaskTracking(const char* function_name, - const char* file_name, - int line); - ~ScopedTaskTracking(); - - private: - TaskTrackingId id_; - MOJO_DISALLOW_COPY_AND_ASSIGN(ScopedTaskTracking); -}; - -} // namespace internal -} // namespace mojo - -#endif // MOJO_PUBLIC_CPP_ENVIRONMENT_SCOPED_TASK_TRACKING_H_
diff --git a/mojo/public/cpp/environment/task_tracker.h b/mojo/public/cpp/environment/task_tracker.h deleted file mode 100644 index d6d3020..0000000 --- a/mojo/public/cpp/environment/task_tracker.h +++ /dev/null
@@ -1,30 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef MOJO_PUBLIC_CPP_ENVIRONMENT_TASK_TRACKER_H_ -#define MOJO_PUBLIC_CPP_ENVIRONMENT_TASK_TRACKER_H_ - -#include <stdint.h> - -namespace mojo { - -typedef intptr_t TaskTrackingId; - -// Interface for wiring task-level profiling. This API is mainly used by the -// generated interface implementation. -struct TaskTracker { - // Start tracking. The returned id must be reclaimed through |EndTracking()|. - TaskTrackingId (*StartTracking)(const char* function_name, - const char* file_name, - int line_number, - const void* program_counter); - // Finish tracking. The |id| is one that is returned from |StartTracking()|. - void (*EndTracking)(const TaskTrackingId id); - // Enable or disable tracking. It is disabled by default. - void (*SetEnabled)(bool enabled); -}; - -} // namespace mojo - -#endif // MOJO_PUBLIC_CPP_ENVIRONMENT_TASK_TRACKER_H_
diff --git a/mojo/public/cpp/environment/tests/logging_unittest.cc b/mojo/public/cpp/environment/tests/logging_unittest.cc index 489888c..ab1de64 100644 --- a/mojo/public/cpp/environment/tests/logging_unittest.cc +++ b/mojo/public/cpp/environment/tests/logging_unittest.cc
@@ -30,7 +30,7 @@ class LoggingTest : public testing::Test { public: - LoggingTest() : environment_(nullptr, &kMockLogger, nullptr) { + LoggingTest() : environment_(nullptr, &kMockLogger) { minimum_log_level_ = MOJO_LOG_LEVEL_INFO; ResetMockLogger(); }
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl index 94f4947..0c904d4 100644 --- a/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl +++ b/mojo/public/tools/bindings/generators/cpp_templates/interface_definition.tmpl
@@ -186,7 +186,6 @@ switch (message->header()->name) { {%- for method in interface.methods %} case internal::k{{class_name}}_{{method.name}}_Name: { - mojo::internal::ScopedTaskTracking task_id("mojo.{{namespace_as_string}}.{{class_name}}.{{method.name}}", __FILE__, __LINE__); {%- if method.response_parameters == None %} internal::{{class_name}}_{{method.name}}_Params_Data* params = reinterpret_cast<internal::{{class_name}}_{{method.name}}_Params_Data*>( @@ -216,7 +215,6 @@ switch (message->header()->name) { {%- for method in interface.methods %} case internal::k{{class_name}}_{{method.name}}_Name: { - mojo::internal::ScopedTaskTracking task_id("mojo::{{namespace_as_string}}::{{class_name}}::{{method.name}}", __FILE__, __LINE__); {%- if method.response_parameters != None %} internal::{{class_name}}_{{method.name}}_Params_Data* params = reinterpret_cast<internal::{{class_name}}_{{method.name}}_Params_Data*>(
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl index a81f11b..cee3f8c 100644 --- a/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl +++ b/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl
@@ -28,7 +28,6 @@ #include "mojo/public/cpp/bindings/lib/validate_params.h" #include "mojo/public/cpp/bindings/lib/validation_errors.h" #include "mojo/public/cpp/bindings/lib/validation_util.h" -#include "mojo/public/cpp/environment/lib/scoped_task_tracking.h" #include "mojo/public/cpp/environment/logging.h" #include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"