[tracing] Move StartupTracingController to services/tracing/public/cpp [chromium/src : main]

1 view
Skip to first unread message

Justin Cohen (Gerrit)

unread,
Apr 20, 2026, 5:28:05 PM (6 days ago) Apr 20
to Arthur Sonzogni, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
Attention needed from Arthur Sonzogni and Etienne Pierre-Doray

Justin Cohen added 3 comments

File components/tracing/BUILD.gn
Line 45, Patchset 17:component("startup_tracing") {
Etienne Pierre-Doray . resolved

If there isn't a need for this to be separate from "tracing_config" above, I'd lean towards folding it into the same target for simplicity (I think conceptually that target covers startup_tracing_controller; funnily "tracing_config" used to be called something like "startup_tracing").

Justin Cohen
This was to avoid 
ERROR Dependency cycle:
//services/tracing/public/cpp:cpp ->
//components/tracing:tracing_config ->
//services/tracing/public/cpp:cpp
Etienne Pierre-Doray

Ah I see!
Come to think of it, any reason we can't put startup_tracing_controller.h directly in services/tracing/public/cpp?

Justin Cohen

Done

File components/tracing/common/startup_tracing_controller.cc
Line 68, Patchset 33:class EmergencyTraceFinalisationCoordinator {
public:
static EmergencyTraceFinalisationCoordinator& GetInstance() {
static base::NoDestructor<EmergencyTraceFinalisationCoordinator> instance;
return *instance;
}
Etienne Pierre-Doray . resolved

I don't like the lifetime of EmergencyTraceFinalisationCoordinator (and the design in general), and saw it's making things more complicated in the follow-up.
I tried something here: https://chromium-review.git.corp.google.com/c/chromium/src/+/7779464
To delete EmergencyTraceFinalisationCoordinator entirely and manage all lifetime in StartupTracingController.
Feel free to incorporate in your CL.

Justin Cohen

Done

File content/browser/browser_main_loop.cc
Line 1108, Patchset 33: if (startup_tracing_controller_) {
startup_tracing_controller_->ShutdownAndWaitForStopIfNeeded();
}
Etienne Pierre-Doray . resolved

We might want to move this at the end of the function so the move is a no-op.

Justin Cohen

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Arthur Sonzogni
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
Gerrit-Change-Number: 7750890
Gerrit-PatchSet: 37
Gerrit-Owner: Justin Cohen <justi...@google.com>
Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Reviewer: Justin Cohen <justi...@google.com>
Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Mon, 20 Apr 2026 21:28:00 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Justin Cohen <justi...@google.com>
Comment-In-Reply-To: Etienne Pierre-Doray <etie...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Justin Cohen (Gerrit)

unread,
Apr 20, 2026, 7:06:33 PM (6 days ago) Apr 20
to Arthur Sonzogni, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
Attention needed from Arthur Sonzogni and Etienne Pierre-Doray

Justin Cohen added 1 comment

File components/tracing/common/startup_tracing_controller.cc
Line 68, Patchset 33:class EmergencyTraceFinalisationCoordinator {
public:
static EmergencyTraceFinalisationCoordinator& GetInstance() {
static base::NoDestructor<EmergencyTraceFinalisationCoordinator> instance;
return *instance;
}
Etienne Pierre-Doray . unresolved

I don't like the lifetime of EmergencyTraceFinalisationCoordinator (and the design in general), and saw it's making things more complicated in the follow-up.
I tried something here: https://chromium-review.git.corp.google.com/c/chromium/src/+/7779464
To delete EmergencyTraceFinalisationCoordinator entirely and manage all lifetime in StartupTracingController.
Feel free to incorporate in your CL.

Justin Cohen

Done

Justin Cohen

Reverted this change.

Open in Gerrit

Related details

Attention is currently required from:
  • Arthur Sonzogni
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
Gerrit-Change-Number: 7750890
Gerrit-PatchSet: 39
Gerrit-Owner: Justin Cohen <justi...@google.com>
Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Reviewer: Justin Cohen <justi...@google.com>
Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Mon, 20 Apr 2026 23:06:22 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Justin Cohen (Gerrit)

unread,
Apr 20, 2026, 10:32:24 PM (6 days ago) Apr 20
to Arthur Sonzogni, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
Attention needed from Arthur Sonzogni and Etienne Pierre-Doray

Justin Cohen added 1 comment

Patchset-level comments
File-level comment, Patchset 40 (Latest):
Justin Cohen . resolved

ptal!

Open in Gerrit

Related details

Attention is currently required from:
  • Arthur Sonzogni
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
Gerrit-Change-Number: 7750890
Gerrit-PatchSet: 40
Gerrit-Owner: Justin Cohen <justi...@google.com>
Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Reviewer: Justin Cohen <justi...@google.com>
Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Tue, 21 Apr 2026 02:32:15 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Arthur Sonzogni (Gerrit)

unread,
Apr 21, 2026, 4:04:14 AM (5 days ago) Apr 21
to Justin Cohen, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
Attention needed from Etienne Pierre-Doray

Arthur Sonzogni added 1 comment

Commit Message
Line 7, Patchset 33:[iOS tracing] Move StartupTracingController to components/tracing/common
Arthur Sonzogni . unresolved

I will defer to components/tracing/OWNERS (e.g. @etie...@chromium.org)

Please close this to add visibility again, and I will stamp after a sanity check.

Arthur Sonzogni

(-visibility, still waiting on this)

Open in Gerrit

Related details

Attention is currently required from:
  • Etienne Pierre-Doray
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
Gerrit-Change-Number: 7750890
Gerrit-PatchSet: 41
Gerrit-Owner: Justin Cohen <justi...@google.com>
Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Reviewer: Justin Cohen <justi...@google.com>
Gerrit-Attention: Etienne Pierre-Doray <etie...@chromium.org>
Gerrit-Comment-Date: Tue, 21 Apr 2026 08:03:55 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Arthur Sonzogni <arthurs...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Etienne Pierre-Doray (Gerrit)

unread,
Apr 21, 2026, 9:25:55 AM (5 days ago) Apr 21
to Justin Cohen, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
Attention needed from Justin Cohen

Etienne Pierre-Doray voted and added 2 comments

Votes added by Etienne Pierre-Doray

Code-Review+1

2 comments

Patchset-level comments
File-level comment, Patchset 41 (Latest):
Etienne Pierre-Doray . resolved

LGTM % comment, thanks!

File content/browser/tracing/startup_tracing_browsertest.cc
Line 229, Patchset 41 (Latest): if (GetOutputLocation() ==
OutputLocation::kDirectoryWithDefaultBasename ||
GetOutputLocation() ==
OutputLocation::kDirectoryWithBasenameUpdatedBeforeStop) {
tracing::StartupTracingController::SetDefaultBasenameForTest(
"trace1", tracing::StartupTracingController::ExtensionType::
kAppendAppropriate);
} else {
// Fallback to explicitly initializing it if we don't set a basename
tracing::TraceStartupConfig::GetInstance();
}
Etienne Pierre-Doray . unresolved

I'm not sure why this change is needed, but specifically, OutputLocation has 3 values (already handled), so it looks like the `else {}` doesn't handle anything.
Am I missing something?

Open in Gerrit

Related details

Attention is currently required from:
  • Justin Cohen
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
    Gerrit-Change-Number: 7750890
    Gerrit-PatchSet: 41
    Gerrit-Owner: Justin Cohen <justi...@google.com>
    Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
    Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
    Gerrit-Reviewer: Justin Cohen <justi...@google.com>
    Gerrit-Attention: Justin Cohen <justi...@google.com>
    Gerrit-Comment-Date: Tue, 21 Apr 2026 13:25:48 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Justin Cohen (Gerrit)

    unread,
    Apr 21, 2026, 9:27:53 AM (5 days ago) Apr 21
    to Etienne Pierre-Doray, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
    Attention needed from Arthur Sonzogni

    Justin Cohen added 1 comment

    Commit Message
    Line 7, Patchset 33:[iOS tracing] Move StartupTracingController to components/tracing/common
    Arthur Sonzogni . resolved

    I will defer to components/tracing/OWNERS (e.g. @etie...@chromium.org)

    Please close this to add visibility again, and I will stamp after a sanity check.

    Arthur Sonzogni

    (-visibility, still waiting on this)

    Justin Cohen

    Etienne stamped with a followup (which I'll look at now!)

    Can you also PTAL?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Arthur Sonzogni
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
    Gerrit-Change-Number: 7750890
    Gerrit-PatchSet: 41
    Gerrit-Owner: Justin Cohen <justi...@google.com>
    Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
    Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
    Gerrit-Reviewer: Justin Cohen <justi...@google.com>
    Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
    Gerrit-Comment-Date: Tue, 21 Apr 2026 13:27:44 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Justin Cohen (Gerrit)

    unread,
    Apr 21, 2026, 12:14:00 PM (5 days ago) Apr 21
    to Etienne Pierre-Doray, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
    Attention needed from Arthur Sonzogni

    Justin Cohen voted and added 3 comments

    Votes added by Justin Cohen

    Auto-Submit+1
    Commit-Queue+1

    3 comments

    Patchset-level comments
    File-level comment, Patchset 42 (Latest):
    Justin Cohen . resolved

    Over to arthursonzogni@ for review!

    File components/tracing/common/startup_tracing_controller.cc
    Line 68, Patchset 33:class EmergencyTraceFinalisationCoordinator {
    public:
    static EmergencyTraceFinalisationCoordinator& GetInstance() {
    static base::NoDestructor<EmergencyTraceFinalisationCoordinator> instance;
    return *instance;
    }
    Etienne Pierre-Doray . resolved

    I don't like the lifetime of EmergencyTraceFinalisationCoordinator (and the design in general), and saw it's making things more complicated in the follow-up.
    I tried something here: https://chromium-review.git.corp.google.com/c/chromium/src/+/7779464
    To delete EmergencyTraceFinalisationCoordinator entirely and manage all lifetime in StartupTracingController.
    Feel free to incorporate in your CL.

    Justin Cohen

    Done

    Justin Cohen

    Reverted this change.

    Justin Cohen

    Done

    File content/browser/tracing/startup_tracing_browsertest.cc
    Line 229, Patchset 41: if (GetOutputLocation() ==

    OutputLocation::kDirectoryWithDefaultBasename ||
    GetOutputLocation() ==
    OutputLocation::kDirectoryWithBasenameUpdatedBeforeStop) {
    tracing::StartupTracingController::SetDefaultBasenameForTest(
    "trace1", tracing::StartupTracingController::ExtensionType::
    kAppendAppropriate);
    } else {
    // Fallback to explicitly initializing it if we don't set a basename
    tracing::TraceStartupConfig::GetInstance();
    }
    Etienne Pierre-Doray . resolved

    I'm not sure why this change is needed, but specifically, OutputLocation has 3 values (already handled), so it looks like the `else {}` doesn't handle anything.
    Am I missing something?

    Justin Cohen

    Removed the incorrect inner GetOutputLocation() checks, but left the else fallback, so we explicitly force TraceStartupConfig creation when SetDefaultBasenameForTest is skipped.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Arthur Sonzogni
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
      Gerrit-Change-Number: 7750890
      Gerrit-PatchSet: 42
      Gerrit-Owner: Justin Cohen <justi...@google.com>
      Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
      Gerrit-Reviewer: Justin Cohen <justi...@google.com>
      Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Comment-Date: Tue, 21 Apr 2026 16:13:54 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Justin Cohen (Gerrit)

      unread,
      Apr 21, 2026, 12:15:59 PM (5 days ago) Apr 21
      to Nico Weber, Etienne Pierre-Doray, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
      Attention needed from Arthur Sonzogni and Nico Weber

      Justin Cohen voted and added 1 comment

      Votes added by Justin Cohen

      Auto-Submit+0

      1 comment

      Patchset-level comments
      Justin Cohen . resolved

      +thakis for base/thread/thread_restrictions.h class move.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Arthur Sonzogni
      • Nico Weber
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
      Gerrit-Change-Number: 7750890
      Gerrit-PatchSet: 42
      Gerrit-Owner: Justin Cohen <justi...@google.com>
      Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
      Gerrit-Reviewer: Justin Cohen <justi...@google.com>
      Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
      Gerrit-Attention: Nico Weber <tha...@chromium.org>
      Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Comment-Date: Tue, 21 Apr 2026 16:15:49 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Nico Weber (Gerrit)

      unread,
      Apr 21, 2026, 12:26:41 PM (5 days ago) Apr 21
      to Justin Cohen, Nico Weber, Etienne Pierre-Doray, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
      Attention needed from Arthur Sonzogni and Justin Cohen

      Nico Weber voted and added 1 comment

      Votes added by Nico Weber

      Code-Review+1

      1 comment

      Patchset-level comments
      Nico Weber . resolved

      base/threading lg

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Arthur Sonzogni
      • Justin Cohen
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement satisfiedCode-Review
      • requirement satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
      Gerrit-Change-Number: 7750890
      Gerrit-PatchSet: 42
      Gerrit-Owner: Justin Cohen <justi...@google.com>
      Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
      Gerrit-Reviewer: Justin Cohen <justi...@google.com>
      Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
      Gerrit-Attention: Justin Cohen <justi...@google.com>
      Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Comment-Date: Tue, 21 Apr 2026 16:26:30 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Arthur Sonzogni (Gerrit)

      unread,
      Apr 22, 2026, 5:13:28 AM (4 days ago) Apr 22
      to Justin Cohen, Nico Weber, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
      Attention needed from Justin Cohen

      Arthur Sonzogni added 5 comments

      Patchset-level comments
      Arthur Sonzogni . resolved

      Thanks!

      File content/public/test/browser_test_base.cc
      Line 1051, Patchset 42 (Latest): if (BrowserMainLoop::GetInstance() &&
      BrowserMainLoop::GetInstance()->startup_tracing_controller()) {
      Arthur Sonzogni . unresolved

      Previously, there was no "if". What happens if you turn the "if" into a CHECK?

      File services/tracing/public/cpp/startup_tracing_controller.h
      Line 111, Patchset 42 (Latest): AndroidPathGeneratorCallback android_path_generator_callback_;
      Arthur Sonzogni . unresolved

      Can we make this argument Android specific (e.g. BUILDFLAG(..))

      Line 31, Patchset 42 (Latest): AndroidPathGeneratorCallback android_path_generator_callback,
      Arthur Sonzogni . unresolved

      Can we make this argument Android specific (e.g. BUILDFLAG(..))

      Line 25, Patchset 42 (Latest): // Signature of the callback used to generate a path on Android.
      // The callback should return a FilePath matching the given basename.
      using AndroidPathGeneratorCallback =
      base::RepeatingCallback<base::FilePath(std::string_view)>;
      Arthur Sonzogni . unresolved

      Can we make this argument Android specific (e.g. BUILDFLAG(..))

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Justin Cohen
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        • requirement satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
        Gerrit-Change-Number: 7750890
        Gerrit-PatchSet: 42
        Gerrit-Owner: Justin Cohen <justi...@google.com>
        Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
        Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
        Gerrit-Reviewer: Justin Cohen <justi...@google.com>
        Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
        Gerrit-Attention: Justin Cohen <justi...@google.com>
        Gerrit-Comment-Date: Wed, 22 Apr 2026 09:13:11 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Justin Cohen (Gerrit)

        unread,
        Apr 23, 2026, 8:55:07 AM (3 days ago) Apr 23
        to Nico Weber, Etienne Pierre-Doray, Arthur Sonzogni, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
        Attention needed from Arthur Sonzogni

        Justin Cohen added 4 comments

        File content/public/test/browser_test_base.cc
        Line 1051, Patchset 42: if (BrowserMainLoop::GetInstance() &&
        BrowserMainLoop::GetInstance()->startup_tracing_controller()) {
        Arthur Sonzogni . resolved

        Previously, there was no "if". What happens if you turn the "if" into a CHECK?

        Justin Cohen

        Done

        File services/tracing/public/cpp/startup_tracing_controller.h
        Line 111, Patchset 42: AndroidPathGeneratorCallback android_path_generator_callback_;
        Arthur Sonzogni . resolved

        Can we make this argument Android specific (e.g. BUILDFLAG(..))

        Justin Cohen

        Done

        Line 31, Patchset 42: AndroidPathGeneratorCallback android_path_generator_callback,
        Arthur Sonzogni . resolved

        Can we make this argument Android specific (e.g. BUILDFLAG(..))

        Justin Cohen

        Done

        Line 25, Patchset 42: // Signature of the callback used to generate a path on Android.

        // The callback should return a FilePath matching the given basename.
        using AndroidPathGeneratorCallback =
        base::RepeatingCallback<base::FilePath(std::string_view)>;
        Arthur Sonzogni . resolved

        Can we make this argument Android specific (e.g. BUILDFLAG(..))

        Justin Cohen

        Done

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Arthur Sonzogni
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement satisfiedCode-Review
          • requirement satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
          Gerrit-Change-Number: 7750890
          Gerrit-PatchSet: 43
          Gerrit-Owner: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
          Gerrit-Reviewer: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
          Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Comment-Date: Thu, 23 Apr 2026 12:55:00 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Arthur Sonzogni <arthurs...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Arthur Sonzogni (Gerrit)

          unread,
          Apr 23, 2026, 8:55:34 AM (3 days ago) Apr 23
          to Justin Cohen, Nico Weber, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
          Attention needed from Arthur Sonzogni and Justin Cohen

          Arthur Sonzogni voted and added 3 comments

          Votes added by Arthur Sonzogni

          Code-Review+1

          3 comments

          File content/public/test/browser_test_base.cc
          Line 1051, Patchset 42: if (BrowserMainLoop::GetInstance() &&
          BrowserMainLoop::GetInstance()->startup_tracing_controller()) {
          Arthur Sonzogni . resolved

          Previously, there was no "if". What happens if you turn the "if" into a CHECK?

          Arthur Sonzogni

          Acknowledged

          File services/tracing/public/cpp/startup_tracing_controller.h
          Line 31, Patchset 42: AndroidPathGeneratorCallback android_path_generator_callback,
          Arthur Sonzogni . resolved

          Can we make this argument Android specific (e.g. BUILDFLAG(..))

          Arthur Sonzogni

          Acknowledged

          Line 25, Patchset 42: // Signature of the callback used to generate a path on Android.
          // The callback should return a FilePath matching the given basename.
          using AndroidPathGeneratorCallback =
          base::RepeatingCallback<base::FilePath(std::string_view)>;
          Arthur Sonzogni . resolved

          Can we make this argument Android specific (e.g. BUILDFLAG(..))

          Arthur Sonzogni

          Acknowledged

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Arthur Sonzogni
          • Justin Cohen
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement satisfiedCode-Owners
          • requirement satisfiedCode-Review
          • requirement satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
          Gerrit-Change-Number: 7750890
          Gerrit-PatchSet: 43
          Gerrit-Owner: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
          Gerrit-Reviewer: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
          Gerrit-Attention: Justin Cohen <justi...@google.com>
          Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Comment-Date: Thu, 23 Apr 2026 12:55:18 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: Yes
          Comment-In-Reply-To: Arthur Sonzogni <arthurs...@chromium.org>
          satisfied_requirement
          open
          diffy

          Justin Cohen (Gerrit)

          unread,
          Apr 23, 2026, 8:56:03 AM (3 days ago) Apr 23
          to Arthur Sonzogni, Nico Weber, Etienne Pierre-Doray, Chromium LUCI CQ, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org
          Attention needed from Arthur Sonzogni

          Justin Cohen voted Commit-Queue+2

          Commit-Queue+2
          Open in Gerrit

          Related details

          Attention is currently required from:
          • Arthur Sonzogni
          Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement satisfiedCode-Owners
          • requirement satisfiedCode-Review
          • requirement satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
          Gerrit-Change-Number: 7750890
          Gerrit-PatchSet: 43
          Gerrit-Owner: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
          Gerrit-Reviewer: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
          Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Comment-Date: Thu, 23 Apr 2026 12:55:57 +0000
          Gerrit-HasComments: No
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          open
          diffy

          Chromium LUCI CQ (Gerrit)

          unread,
          Apr 23, 2026, 9:03:05 AM (3 days ago) Apr 23
          to Justin Cohen, Arthur Sonzogni, Nico Weber, Etienne Pierre-Doray, chromium...@chromium.org, spang...@chromium.org, tracing...@chromium.org, wfh+...@chromium.org

          Chromium LUCI CQ submitted the change

          Change information

          Commit message:
          [tracing] Move StartupTracingController to services/tracing/public/cpp

          This CL extracts `StartupTracingController` out of `content/browser` and
          moves it into `services/tracing/public/cpp`. This allows the startup
          tracing logic to be shared and reused across different platforms and
          components that do not depend on the full `content/` layer (such as
          iOS).

          As part of this migration, several architectural improvements were made:
          - Removed the global singleton `g_instance` from `StartupTracingController`.
          - The `EmergencyTraceFinalisationCoordinator` helper class was moved to
          `services/tracing/public/cpp` and updated to use `base::WaitableEvent`
          and `base::AtomicFlag` for cleaner thread-safe coordination during
          emergency stop.
          - The controller is now explicitly instantiated and owned by
          `content::BrowserMainLoop`.
          - The finalization of startup tracing in `BrowserMainLoop::PreShutdown()`
          was moved to the end of the function to ensure other services have
          finished their work before tracing stops.
          - Simplified how tests override tracing behaviors. Parameters like
          default basename and temporary file policies are now configured via
          static methods on `StartupTracingController` rather than being plumbed
          through `ContentMainParams`.
          Bug: 495937056
          Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
          Bypass-Check-License: Moved files
          Reviewed-by: Arthur Sonzogni <arthurs...@chromium.org>
          Reviewed-by: Nico Weber <tha...@chromium.org>
          Commit-Queue: Justin Cohen <justi...@google.com>
          Reviewed-by: Etienne Pierre-Doray <etie...@chromium.org>
          Cr-Commit-Position: refs/heads/main@{#1619457}
          Files:
          • M base/threading/thread_restrictions.h
          • M content/browser/BUILD.gn
          • M content/browser/browser_main_loop.cc
          • M content/browser/browser_main_loop.h
          • M content/browser/browser_main_runner_impl.cc
          • M content/browser/tracing/startup_tracing_browsertest.cc
          • M content/public/test/browser_test_base.cc
          • M services/tracing/public/cpp/BUILD.gn
          • R services/tracing/public/cpp/startup_tracing_controller.cc
          • R services/tracing/public/cpp/startup_tracing_controller.h
          • M services/tracing/public/cpp/trace_startup_config.cc
          Change size: L
          Delta: 11 files changed, 235 insertions(+), 150 deletions(-)
          Branch: refs/heads/main
          Submit Requirements:
          • requirement satisfiedCode-Review: +1 by Etienne Pierre-Doray, +1 by Arthur Sonzogni, +1 by Nico Weber
          Open in Gerrit
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: merged
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I98c9178d2e8bfb4fdfd9b02056a1eee63edc7059
          Gerrit-Change-Number: 7750890
          Gerrit-PatchSet: 44
          Gerrit-Owner: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
          Gerrit-Reviewer: Etienne Pierre-Doray <etie...@chromium.org>
          Gerrit-Reviewer: Justin Cohen <justi...@google.com>
          Gerrit-Reviewer: Nico Weber <tha...@chromium.org>
          open
          diffy
          satisfied_requirement
          Reply all
          Reply to author
          Forward
          0 new messages