Reshuffle include/ directory layout

This CL reorganizes the include/ directory as follows:
1. The immediate subdirectories of include/ are now the stable API
   surface exposed to all embedders, with the exception of ext/.
2. ext/ contains the unstable API surface that is exposed only to chrome.

Test: builds on all configurations and passes tests
Bug: 132678367
Change-Id: If638d4b4c150fd591cd1db851283b25ff6083ed6
diff --git a/src/base/BUILD.gn b/src/base/BUILD.gn
index 97abdcf..7359374 100644
--- a/src/base/BUILD.gn
+++ b/src/base/BUILD.gn
@@ -22,6 +22,7 @@
   ]
   public_deps = [
     "../../include/perfetto/base",
+    "../../include/perfetto/ext/base",
   ]
   sources = [
     "file_utils.cc",
@@ -82,7 +83,8 @@
     ]
     deps = [
       "../../gn:default_deps",
-      "../../include/perfetto/base",
+      "../../include/perfetto/ext/base",
+      "../../include/perfetto/ext/base",
     ]
     if (is_linux || is_android) {
       deps += [ "../../buildtools:libbacktrace" ]
@@ -96,7 +98,8 @@
   source_set("unix_socket") {
     deps = [
       "../../gn:default_deps",
-      "../../include/perfetto/base",
+      "../../include/perfetto/ext/base",
+      "../../include/perfetto/ext/base",
     ]
     sources = [
       "unix_socket.cc",
@@ -136,7 +139,8 @@
     "../../gn:gtest_deps",
   ]
 
-  if (is_android && (perfetto_build_standalone || perfetto_build_with_android)) {
+  if (is_android &&
+      (perfetto_build_standalone || perfetto_build_with_android)) {
     deps += [ ":android_task_runner" ]
   }
   sources = [
diff --git a/src/base/android_task_runner.cc b/src/base/android_task_runner.cc
index aab61d1..e6979e4 100644
--- a/src/base/android_task_runner.cc
+++ b/src/base/android_task_runner.cc
@@ -14,11 +14,13 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/android_task_runner.h"
+#include "perfetto/ext/base/android_task_runner.h"
 
 #include <errno.h>
 #include <sys/timerfd.h>
 
+#include "perfetto/ext/base/watchdog.h"
+
 namespace perfetto {
 namespace base {
 
@@ -96,7 +98,7 @@
   if (has_next)
     ScheduleImmediateWakeUp();
   errno = 0;
-  RunTask(immediate_task);
+  RunTaskWithWatchdogGuard(immediate_task);
 }
 
 void AndroidTaskRunner::RunDelayedTask() {
@@ -122,7 +124,7 @@
   if (next_wake_up.count())
     ScheduleDelayedWakeUp(next_wake_up);
   errno = 0;
-  RunTask(delayed_task);
+  RunTaskWithWatchdogGuard(delayed_task);
 }
 
 void AndroidTaskRunner::ScheduleImmediateWakeUp() {
@@ -200,7 +202,7 @@
     task = it->second;
   }
   errno = 0;
-  RunTask(task);
+  RunTaskWithWatchdogGuard(task);
   return true;
 }
 
diff --git a/src/base/circular_queue_unittest.cc b/src/base/circular_queue_unittest.cc
index 7db3b55..ededf2f 100644
--- a/src/base/circular_queue_unittest.cc
+++ b/src/base/circular_queue_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/circular_queue.h"
+#include "perfetto/ext/base/circular_queue.h"
 
 #include <random>
 
diff --git a/src/base/debug_crash_stack_trace.cc b/src/base/debug_crash_stack_trace.cc
index 31fe32d..ae857a4 100644
--- a/src/base/debug_crash_stack_trace.cc
+++ b/src/base/debug_crash_stack_trace.cc
@@ -28,7 +28,7 @@
 #include <unwind.h>
 
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/file_utils.h"
+#include "perfetto/ext/base/file_utils.h"
 
 // Some glibc headers hit this when using signals.
 #pragma GCC diagnostic push
diff --git a/src/base/event.cc b/src/base/event.cc
index 4fa6ec0..0750523 100644
--- a/src/base/event.cc
+++ b/src/base/event.cc
@@ -17,9 +17,9 @@
 #include <stdint.h>
 #include <unistd.h>
 
-#include "perfetto/base/event.h"
 #include "perfetto/base/logging.h"
-#include "perfetto/base/pipe.h"
+#include "perfetto/ext/base/event.h"
+#include "perfetto/ext/base/pipe.h"
 
 #if PERFETTO_USE_EVENTFD()
 #include <sys/eventfd.h>
diff --git a/src/base/file_utils.cc b/src/base/file_utils.cc
index 7dc003c..75debc5 100644
--- a/src/base/file_utils.cc
+++ b/src/base/file_utils.cc
@@ -17,9 +17,9 @@
 #include <sys/stat.h>
 
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/file_utils.h"
 #include "perfetto/base/logging.h"
-#include "perfetto/base/scoped_file.h"
+#include "perfetto/ext/base/file_utils.h"
+#include "perfetto/ext/base/scoped_file.h"
 
 #if !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
 #include <unistd.h>
diff --git a/src/base/metatrace.cc b/src/base/metatrace.cc
index 99b787f..66954bf 100644
--- a/src/base/metatrace.cc
+++ b/src/base/metatrace.cc
@@ -14,14 +14,14 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/metatrace.h"
+#include "perfetto/ext/base/metatrace.h"
 
 #include <fcntl.h>
 #include <stdlib.h>
 
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/file_utils.h"
-#include "perfetto/base/time.h"
+#include "perfetto/ext/base/file_utils.h"
+#include "perfetto/ext/base/time.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
 #include <corecrt_io.h>
diff --git a/src/base/no_destructor_unittest.cc b/src/base/no_destructor_unittest.cc
index 0210d21..9c3460d 100644
--- a/src/base/no_destructor_unittest.cc
+++ b/src/base/no_destructor_unittest.cc
@@ -19,7 +19,7 @@
 
 #include <gmock/gmock.h>
 #include <gtest/gtest.h>
-#include "perfetto/base/no_destructor.h"
+#include "perfetto/ext/base/no_destructor.h"
 
 namespace perfetto {
 namespace base {
diff --git a/src/base/optional_unittest.cc b/src/base/optional_unittest.cc
index f2a26f8..cb0dc48 100644
--- a/src/base/optional_unittest.cc
+++ b/src/base/optional_unittest.cc
@@ -26,7 +26,7 @@
 #include <string>
 #include <vector>
 
-#include "perfetto/base/optional.h"
+#include "perfetto/ext/base/optional.h"
 
 using ::testing::ElementsAre;
 
diff --git a/src/base/paged_memory.cc b/src/base/paged_memory.cc
index 97d418c..2339309 100644
--- a/src/base/paged_memory.cc
+++ b/src/base/paged_memory.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/paged_memory.h"
+#include "perfetto/ext/base/paged_memory.h"
 
 #include <algorithm>
 #include <cmath>
@@ -26,7 +26,8 @@
 #endif  // PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
 
 #include "perfetto/base/logging.h"
-#include "perfetto/base/utils.h"
+#include "perfetto/ext/base/container_annotations.h"
+#include "perfetto/ext/base/utils.h"
 
 namespace perfetto {
 namespace base {
@@ -37,7 +38,7 @@
 
 #if TRACK_COMMITTED_SIZE()
 constexpr size_t kCommitChunkSize = kPageSize * 1024;  // 4mB
-#endif  // TRACK_COMMITTED_SIZE()
+#endif                                                 // TRACK_COMMITTED_SIZE()
 
 }  // namespace
 
diff --git a/src/base/paged_memory_unittest.cc b/src/base/paged_memory_unittest.cc
index e128bb7..1ccea60 100644
--- a/src/base/paged_memory_unittest.cc
+++ b/src/base/paged_memory_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/paged_memory.h"
+#include "perfetto/ext/base/paged_memory.h"
 
 #include <stdint.h>
 
diff --git a/src/base/pipe.cc b/src/base/pipe.cc
index db7fd3a..5c9c3d7 100644
--- a/src/base/pipe.cc
+++ b/src/base/pipe.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/pipe.h"
+#include "perfetto/ext/base/pipe.h"
 
 #include <sys/types.h>
 #include <unistd.h>
diff --git a/src/base/scoped_file_unittest.cc b/src/base/scoped_file_unittest.cc
index ca6dc7b..7c77641 100644
--- a/src/base/scoped_file_unittest.cc
+++ b/src/base/scoped_file_unittest.cc
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/scoped_file.h"
+#include "perfetto/ext/base/scoped_file.h"
 #include "perfetto/base/build_config.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
diff --git a/src/base/string_splitter.cc b/src/base/string_splitter.cc
index aab47b1..adf9fc8 100644
--- a/src/base/string_splitter.cc
+++ b/src/base/string_splitter.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_splitter.h"
+#include "perfetto/ext/base/string_splitter.h"
 
 #include <utility>
 
diff --git a/src/base/string_splitter_unittest.cc b/src/base/string_splitter_unittest.cc
index 928c1f3..fa98434 100644
--- a/src/base/string_splitter_unittest.cc
+++ b/src/base/string_splitter_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_splitter.h"
+#include "perfetto/ext/base/string_splitter.h"
 
 #include <vector>
 
diff --git a/src/base/string_utils.cc b/src/base/string_utils.cc
index 6616364..e5b7c4e 100644
--- a/src/base/string_utils.cc
+++ b/src/base/string_utils.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_utils.h"
+#include "perfetto/ext/base/string_utils.h"
 
 #include <algorithm>
 
diff --git a/src/base/string_utils_unittest.cc b/src/base/string_utils_unittest.cc
index 000efa1..72471e7 100644
--- a/src/base/string_utils_unittest.cc
+++ b/src/base/string_utils_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_utils.h"
+#include "perfetto/ext/base/string_utils.h"
 
 #include <gmock/gmock.h>
 #include <gtest/gtest.h>
diff --git a/src/base/string_view.cc b/src/base/string_view.cc
index b10239d..7292546 100644
--- a/src/base/string_view.cc
+++ b/src/base/string_view.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_view.h"
+#include "perfetto/ext/base/string_view.h"
 
 namespace perfetto {
 namespace base {
diff --git a/src/base/string_view_unittest.cc b/src/base/string_view_unittest.cc
index 9959696..4e1ef06 100644
--- a/src/base/string_view_unittest.cc
+++ b/src/base/string_view_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_view.h"
+#include "perfetto/ext/base/string_view.h"
 
 #include <forward_list>
 #include <unordered_map>
diff --git a/src/base/string_writer_unittest.cc b/src/base/string_writer_unittest.cc
index 9dc9c1f..8d83dcc 100644
--- a/src/base/string_writer_unittest.cc
+++ b/src/base/string_writer_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/string_writer.h"
+#include "perfetto/ext/base/string_writer.h"
 
 #include <gmock/gmock.h>
 #include <gtest/gtest.h>
diff --git a/src/base/task_runner_unittest.cc b/src/base/task_runner_unittest.cc
index e85a5af..95e2e00 100644
--- a/src/base/task_runner_unittest.cc
+++ b/src/base/task_runner_unittest.cc
@@ -14,21 +14,21 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/unix_task_runner.h"
+#include "perfetto/ext/base/unix_task_runner.h"
 
 #include <gtest/gtest.h>
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/scoped_file.h"
+#include "perfetto/ext/base/scoped_file.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) && \
     !PERFETTO_BUILDFLAG(PERFETTO_EMBEDDER_BUILD)
-#include "perfetto/base/android_task_runner.h"
+#include "perfetto/ext/base/android_task_runner.h"
 #endif
 
 #include <thread>
 
-#include "perfetto/base/file_utils.h"
-#include "perfetto/base/pipe.h"
+#include "perfetto/ext/base/file_utils.h"
+#include "perfetto/ext/base/pipe.h"
 #include "src/base/test/gtest_test_suite.h"
 
 namespace perfetto {
diff --git a/src/base/temp_file.cc b/src/base/temp_file.cc
index e648108..d57d383 100644
--- a/src/base/temp_file.cc
+++ b/src/base/temp_file.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/temp_file.h"
+#include "perfetto/ext/base/temp_file.h"
 
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/src/base/temp_file_unittest.cc b/src/base/temp_file_unittest.cc
index 4c1dff0..8f5dc22 100644
--- a/src/base/temp_file_unittest.cc
+++ b/src/base/temp_file_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/temp_file.h"
+#include "perfetto/ext/base/temp_file.h"
 
 #include <sys/stat.h>
 #include <unistd.h>
diff --git a/src/base/test/benchmark_main.cc b/src/base/test/benchmark_main.cc
index f904cfc..e410e52 100644
--- a/src/base/test/benchmark_main.cc
+++ b/src/base/test/benchmark_main.cc
@@ -12,6 +12,6 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-#include "benchmark/benchmark.h"
+#include <benchmark/benchmark.h>
 
 BENCHMARK_MAIN();
diff --git a/src/base/test/gtest_test_suite.h b/src/base/test/gtest_test_suite.h
index 6bf7758..b8b7561 100644
--- a/src/base/test/gtest_test_suite.h
+++ b/src/base/test/gtest_test_suite.h
@@ -17,7 +17,7 @@
 #ifndef SRC_BASE_TEST_GTEST_TEST_SUITE_H_
 #define SRC_BASE_TEST_GTEST_TEST_SUITE_H_
 
-#include "gtest/gtest.h"
+#include <gtest/gtest.h>
 
 // Define newer TEST_SUITE googletest APIs as aliases of the older APIs where
 // necessary. This makes it possible to migrate Perfetto to the newer APIs and
diff --git a/src/base/test/test_task_runner.h b/src/base/test/test_task_runner.h
index 28cb92a..a1a9a35 100644
--- a/src/base/test/test_task_runner.h
+++ b/src/base/test/test_task_runner.h
@@ -25,12 +25,12 @@
 #include <string>
 
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/thread_checker.h"
-#include "perfetto/base/unix_task_runner.h"
+#include "perfetto/ext/base/thread_checker.h"
+#include "perfetto/ext/base/unix_task_runner.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) && \
     !PERFETTO_BUILDFLAG(PERFETTO_EMBEDDER_BUILD)
-#include "perfetto/base/android_task_runner.h"
+#include "perfetto/ext/base/android_task_runner.h"
 #endif
 
 namespace perfetto {
diff --git a/src/base/test/utils.h b/src/base/test/utils.h
index b3677b9..2884b57 100644
--- a/src/base/test/utils.h
+++ b/src/base/test/utils.h
@@ -19,7 +19,7 @@
 
 #include <string>
 
-#include "gtest/gtest.h"
+#include <gtest/gtest.h>
 #include "perfetto/base/logging.h"
 
 #if defined(GTEST_HAS_DEATH_TEST)
diff --git a/src/base/test/vm_test_utils.cc b/src/base/test/vm_test_utils.cc
index 3e15cae..58a81a6 100644
--- a/src/base/test/vm_test_utils.cc
+++ b/src/base/test/vm_test_utils.cc
@@ -17,7 +17,7 @@
 #include "src/base/test/vm_test_utils.h"
 
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/utils.h"
+#include "perfetto/ext/base/utils.h"
 
 #include <memory>
 
diff --git a/src/base/thread_checker.cc b/src/base/thread_checker.cc
index c723dbe..501abbb 100644
--- a/src/base/thread_checker.cc
+++ b/src/base/thread_checker.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/thread_checker.h"
+#include "perfetto/ext/base/thread_checker.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
 #include <Windows.h>
diff --git a/src/base/thread_checker_unittest.cc b/src/base/thread_checker_unittest.cc
index 735707c..46ffcd3 100644
--- a/src/base/thread_checker_unittest.cc
+++ b/src/base/thread_checker_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/thread_checker.h"
+#include "perfetto/ext/base/thread_checker.h"
 
 #include <pthread.h>
 
diff --git a/src/base/thread_task_runner.cc b/src/base/thread_task_runner.cc
index a545e6b..d0a1036 100644
--- a/src/base/thread_task_runner.cc
+++ b/src/base/thread_task_runner.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/thread_task_runner.h"
+#include "perfetto/ext/base/thread_task_runner.h"
 
 #include <condition_variable>
 #include <functional>
@@ -22,7 +22,7 @@
 #include <thread>
 
 #include "perfetto/base/logging.h"
-#include "perfetto/base/unix_task_runner.h"
+#include "perfetto/ext/base/unix_task_runner.h"
 
 namespace perfetto {
 namespace base {
diff --git a/src/base/thread_task_runner_unittest.cc b/src/base/thread_task_runner_unittest.cc
index 0eb3a76..c4356fe 100644
--- a/src/base/thread_task_runner_unittest.cc
+++ b/src/base/thread_task_runner_unittest.cc
@@ -14,12 +14,12 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/thread_task_runner.h"
+#include "perfetto/ext/base/thread_task_runner.h"
 
 #include <thread>
 
 #include <gtest/gtest.h>
-#include "perfetto/base/thread_checker.h"
+#include "perfetto/ext/base/thread_checker.h"
 
 namespace perfetto {
 namespace base {
diff --git a/src/base/time.cc b/src/base/time.cc
index 8e22d59..f3f809a 100644
--- a/src/base/time.cc
+++ b/src/base/time.cc
@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
+#include "perfetto/ext/base/time.h"
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/time.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
 #include <Windows.h>
diff --git a/src/base/time_unittest.cc b/src/base/time_unittest.cc
index aa3924d..cac79bd 100644
--- a/src/base/time_unittest.cc
+++ b/src/base/time_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/time.h"
+#include "perfetto/ext/base/time.h"
 
 #include <gtest/gtest.h>
 
diff --git a/src/base/unix_socket.cc b/src/base/unix_socket.cc
index 1a8364f..cbf3301 100644
--- a/src/base/unix_socket.cc
+++ b/src/base/unix_socket.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/unix_socket.h"
+#include "perfetto/ext/base/unix_socket.h"
 
 #include <errno.h>
 #include <fcntl.h>
@@ -32,7 +32,7 @@
 #include "perfetto/base/build_config.h"
 #include "perfetto/base/logging.h"
 #include "perfetto/base/task_runner.h"
-#include "perfetto/base/utils.h"
+#include "perfetto/ext/base/utils.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_OS_MACOSX)
 #include <sys/ucred.h>
diff --git a/src/base/unix_socket_unittest.cc b/src/base/unix_socket_unittest.cc
index 685abfd..e7b3d1a 100644
--- a/src/base/unix_socket_unittest.cc
+++ b/src/base/unix_socket_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/unix_socket.h"
+#include "perfetto/ext/base/unix_socket.h"
 
 #include <signal.h>
 #include <sys/mman.h>
@@ -27,11 +27,11 @@
 #include <gmock/gmock.h>
 #include <gtest/gtest.h>
 #include "perfetto/base/build_config.h"
-#include "perfetto/base/file_utils.h"
 #include "perfetto/base/logging.h"
-#include "perfetto/base/pipe.h"
-#include "perfetto/base/temp_file.h"
-#include "perfetto/base/utils.h"
+#include "perfetto/ext/base/file_utils.h"
+#include "perfetto/ext/base/pipe.h"
+#include "perfetto/ext/base/temp_file.h"
+#include "perfetto/ext/base/utils.h"
 #include "src/base/test/test_task_runner.h"
 #include "src/ipc/test/test_socket.h"
 
diff --git a/src/base/unix_task_runner.cc b/src/base/unix_task_runner.cc
index 0b651ae..6ef71aa 100644
--- a/src/base/unix_task_runner.cc
+++ b/src/base/unix_task_runner.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/unix_task_runner.h"
+#include "perfetto/ext/base/unix_task_runner.h"
 
 #include "perfetto/base/build_config.h"
 
@@ -24,6 +24,8 @@
 
 #include <limits>
 
+#include "perfetto/ext/base/watchdog.h"
+
 namespace perfetto {
 namespace base {
 
@@ -114,10 +116,10 @@
 
   errno = 0;
   if (immediate_task)
-    RunTask(immediate_task);
+    RunTaskWithWatchdogGuard(immediate_task);
   errno = 0;
   if (delayed_task)
-    RunTask(delayed_task);
+    RunTaskWithWatchdogGuard(delayed_task);
 }
 
 void UnixTaskRunner::PostFileDescriptorWatches() {
@@ -163,7 +165,7 @@
     task = it->second.callback;
   }
   errno = 0;
-  RunTask(task);
+  RunTaskWithWatchdogGuard(task);
 }
 
 int UnixTaskRunner::GetDelayMsToNextTaskLocked() const {
diff --git a/src/base/utils_unittest.cc b/src/base/utils_unittest.cc
index 1db6cf2..a1c04af 100644
--- a/src/base/utils_unittest.cc
+++ b/src/base/utils_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/utils.h"
+#include "perfetto/ext/base/utils.h"
 
 #include <fcntl.h>
 #include <signal.h>
@@ -23,8 +23,8 @@
 
 #include <gtest/gtest.h>
 
-#include "perfetto/base/file_utils.h"
-#include "perfetto/base/pipe.h"
+#include "perfetto/ext/base/file_utils.h"
+#include "perfetto/ext/base/pipe.h"
 
 namespace perfetto {
 namespace base {
diff --git a/src/base/watchdog_posix.cc b/src/base/watchdog_posix.cc
index dd68455..9a8965e 100644
--- a/src/base/watchdog_posix.cc
+++ b/src/base/watchdog_posix.cc
@@ -23,7 +23,7 @@
 // one-off case.
 #if !PERFETTO_BUILDFLAG(PERFETTO_OS_MACOSX)
 
-#include "perfetto/base/watchdog_posix.h"
+#include "perfetto/ext/base/watchdog_posix.h"
 
 #include <fcntl.h>
 #include <inttypes.h>
@@ -35,8 +35,8 @@
 
 #include "perfetto/base/build_config.h"
 #include "perfetto/base/logging.h"
-#include "perfetto/base/scoped_file.h"
-#include "perfetto/base/thread_utils.h"
+#include "perfetto/ext/base/scoped_file.h"
+#include "perfetto/ext/base/thread_utils.h"
 
 #if PERFETTO_BUILDFLAG(PERFETTO_EMBEDDER_BUILD)
 #error perfetto::base::Watchdog should not be used in Chromium or embedders
diff --git a/src/base/watchdog_unittest.cc b/src/base/watchdog_unittest.cc
index ae616c6..e8acaf7 100644
--- a/src/base/watchdog_unittest.cc
+++ b/src/base/watchdog_unittest.cc
@@ -14,13 +14,13 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/watchdog.h"
+#include "perfetto/ext/base/watchdog.h"
 
 #include <gtest/gtest.h>
 #include "perfetto/base/logging.h"
-#include "perfetto/base/paged_memory.h"
-#include "perfetto/base/scoped_file.h"
-#include "perfetto/base/thread_utils.h"
+#include "perfetto/ext/base/paged_memory.h"
+#include "perfetto/ext/base/scoped_file.h"
+#include "perfetto/ext/base/thread_utils.h"
 
 #include <signal.h>
 #include <time.h>
diff --git a/src/base/weak_ptr_unittest.cc b/src/base/weak_ptr_unittest.cc
index e2ccf34..4b63d4e 100644
--- a/src/base/weak_ptr_unittest.cc
+++ b/src/base/weak_ptr_unittest.cc
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-#include "perfetto/base/weak_ptr.h"
+#include "perfetto/ext/base/weak_ptr.h"
 
 #include <gtest/gtest.h>