0
Commit Graph

14 Commits

Author SHA1 Message Date
Ben Bamesberger
1db126aa65 Reland "Parallel process launching"
This is a reland of 18905f7828

Reland changes: The change was reverted because
ChildProcessLancher::Notify was not called after a policy error,
causing the launch to hang. Now, the FinishStartSandboxedProcess
callback will always run ensuring that Notify will always run, too.
Also, a test was added to show that a failed launch will not hang.

Original change's description:
> Parallel process launching
>
> This change adds support for parallel process launching on Windows.
>
> Background: Processes are launched on a launcher thread, but this thread
> can become bottlenecked if launching multiple processes simultaneously.
> Most of the time spent in the launcher thread is observed to be in the
> CreateProcess call.
>
> This change makes process launching async by moving the target creation
> work to the thread pool. This frees up the launcher thread so it can
> accept tasks more quickly, and multiple target creations can now run in
> parallel.
>
> --enable-features=WinSboxParallelProcessLaunch
>
> Bug: 1499551
> Tests: sbox_integration_tests ParallelLaunchTest.*
> Change-Id: I7add6a6a68d31868a41fb433b223695ff36d8769
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5015584
> Reviewed-by: Will Harris <wfh@chromium.org>
> Commit-Queue: Ben Bamesberger <benb@microsoft.com>
> Reviewed-by: Alex Gough <ajgo@chromium.org>
> Reviewed-by: Caitlin Fischer <caitlinfischer@google.com>
> Reviewed-by: Bo Liu <boliu@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1348194}

  content_browsertests
  BrowserChildProcessObserverBrowserTest.LaunchPreSpawnFailed

Bug: 40287847
Change-Id: Ia200ec065a9540f9d4790e2c6e0ae98178fdf747
Tests: sbox_integration_tests ParallelLaunchTest.*,
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5852357
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Reviewed-by: Will Harris <wfh@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Commit-Queue: Will Harris <wfh@chromium.org>
Reviewed-by: Alex Gough <ajgo@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1365065}
2024-10-07 18:52:12 +00:00
Alison Gale
770f3fce37 Migrate TODOs referencing old crbug IDs to the new issue tracker IDs
The canonical bug format is TODO(crbug.com/<id>). TODOs of the
following forms will all be migrated to the new format:

- TODO(crbug.com/<old id>)
- TODO(https://crbug.com/<old id>)
- TODO(crbug/<old id>)
- TODO(crbug/monorail/<old id>)
- TODO(<old id>)
- TODO(issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/u/1/issues/<old id>)
- TODO(bugs.chromium.org/<old id>)

Bug id mapping is sourced from go/chrome-on-buganizer-prod-issues.
See go/crbug-todo-migration for details.

#crbug-todo-migration

Bug: b/321899722
Change-Id: Ibc66b8c440e4bcdef414e77fef4d9874d2ea9951
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5493800
Auto-Submit: Alison Gale <agale@chromium.org>
Commit-Queue: Alison Gale <agale@chromium.org>
Reviewed-by: Peter Boström <pbos@chromium.org>
Owners-Override: Alison Gale <agale@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1293330}
2024-04-27 00:39:58 +00:00
Alison Gale
47d1537de7 Migrate TODOs referencing old crbug IDs to the new issue tracker IDs
The canonical bug format is TODO(crbug.com/<id>). TODOs of the
following forms will all be migrated to the new format:

- TODO(crbug.com/<old id>)
- TODO(https://crbug.com/<old id>)
- TODO(crbug/<old id>)
- TODO(crbug/monorail/<old id>)
- TODO(<old id>)
- TODO(issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/u/1/issues/<old id>)
- TODO(bugs.chromium.org/<old id>)

Bug id mapping is sourced from go/chrome-on-buganizer-prod-issues.
See go/crbug-todo-migration for details.

#crbug-todo-migration

Bug: b/321899722
Change-Id: Ieeb461e2d489e86fd50b87a2a0721a2be34520c3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5467317
Owners-Override: Alison Gale <agale@chromium.org>
Commit-Queue: Darryl James <dljames@chromium.org>
Commit-Queue: Alison Gale <agale@chromium.org>
Reviewed-by: Darryl James <dljames@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1290198}
2024-04-19 21:31:46 +00:00
mark a. foltz
54537f05a7 [Copyright] Fix copyright headers in Chromium.
This CL updates copyright headers in /content
to the current format:

// Copyright $year The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

Generated with:

./tools/git/mffr.py -g "*.cc" -g "*.h" -g "*.mm" -g "*.py" -g "*.js" -g "*.java" -g "*.mojom" -g "*.xml" -g "*.jinja" -g "*.gn" -g "*.gni" -g "*.star" -g "*.icon" -g "*.ts" -g "*.css" -g "*.json" -g "*.html" -g "*.proto" -g "*.idl" -g "*.pins" -g "*.yml" -g "*.sh" 'Chromium Authors\. All rights reserved\.' 'Chromium Authors'

Additional manual fixes were made to files that have extra "(C)"
strings, or where line breaks were wrong.

This CL was uploaded by git cl split.

R=boliu@chromium.org, rakina@chromium.org

Bug: 1457007
Change-Id: I9702c9e35e5f01b6afb8da1cf89f0edaa8d1379a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4823997
Reviewed-by: Bo Liu <boliu@chromium.org>
Auto-Submit: Mark Foltz <mfoltz@chromium.org>
Commit-Queue: Mark Foltz <mfoltz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1190534}
2023-08-31 04:33:41 +00:00
Tommy Nyquist
c4ed13bd93 Revert "Update remaining license headers in Chromium."
This reverts commit f2137d9fad.

Reason for revert: Fails CacheStorageEagerReadingTest tests that expect blobs to be of a specific size. See https://crbug.com/1457696. 

Original change's description:
> Update remaining license headers in Chromium.
>
> These license headers do not conform to the current requirements.
>
> Generated with:
>
> ./tools/git/mffr.py -g "*.cc" -g "*.h" -g "*.mm" -g "*.py" -g "*.js" -g "*.java" -g "*.mojom" -g "*.xml" -g "*.jinja" -g "*.gn" -g "*.gni" -g "*.star" -g "*.icon" -g "*.ts" -g "*.css" -g "*.json" -g "*.html" -g "*.proto" -g "*.idl" -g "*.pins" -g "*.yml" -g "*.sh" 'Chromium Authors\. All rights reserved\.' 'Chromium Authors'
>
> Additional manual fixes were made to files that have extra "(C)"
> strings, or where line breaks were wrong.  See the diffs between
> patchsets 2 and 3 and 4 and 6.
>
> No-Presubmit: True
> No-Try: True
> Bug: 1457007
> Change-Id: I1b0707dbd0696da1eb9aaa44e337508516c11995
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4641371
> Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
> Commit-Queue: Mark Foltz <mfoltz@chromium.org>
> Owners-Override: Bruce Dawson <brucedawson@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1161990}

Bug: 1457007, 1457696
Change-Id: I7f9cd8d5a903b251182ca27fdbc66d505baae838
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4642876
Commit-Queue: Tommy Nyquist <nyquist@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tommy Nyquist <nyquist@chromium.org>
Auto-Submit: Tommy Nyquist <nyquist@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1162042}
2023-06-24 01:57:57 +00:00
mark a. foltz
f2137d9fad Update remaining license headers in Chromium.
These license headers do not conform to the current requirements.

Generated with:

./tools/git/mffr.py -g "*.cc" -g "*.h" -g "*.mm" -g "*.py" -g "*.js" -g "*.java" -g "*.mojom" -g "*.xml" -g "*.jinja" -g "*.gn" -g "*.gni" -g "*.star" -g "*.icon" -g "*.ts" -g "*.css" -g "*.json" -g "*.html" -g "*.proto" -g "*.idl" -g "*.pins" -g "*.yml" -g "*.sh" 'Chromium Authors\. All rights reserved\.' 'Chromium Authors'

Additional manual fixes were made to files that have extra "(C)"
strings, or where line breaks were wrong.  See the diffs between
patchsets 2 and 3 and 4 and 6.

No-Presubmit: True
No-Try: True
Bug: 1457007
Change-Id: I1b0707dbd0696da1eb9aaa44e337508516c11995
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4641371
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Mark Foltz <mfoltz@chromium.org>
Owners-Override: Bruce Dawson <brucedawson@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1161990}
2023-06-23 22:34:26 +00:00
Avi Drissman
adac219925 Update header includes for /base/functional in /content
bind.h, callback.h, callback_forward.h, and callback_helpers.h
moved into /base/functional/. Update the include paths to
directly include them in their new location.

Bug: 1364441
Change-Id: I32ec425b9c0e52ec4b50047bf3290fecc5c905ff
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4148554
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Auto-Submit: Avi Drissman <avi@chromium.org>
Owners-Override: Avi Drissman <avi@chromium.org>
Owners-Override: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1091567}
2023-01-11 23:46:39 +00:00
Will Harris
cd57b83d9f Move ChildProcessHost* from content/common to content/browser
This is a prerequisite for moving a browser-only API that is
used by ChildProcessHostImpl from common to browser.

BUG=1402942

Change-Id: I6eea0952e6bf1ef30498b6f465067e599ea0ff53
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4134795
Commit-Queue: Will Harris <wfh@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Owners-Override: Nasko Oskov <nasko@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1089401}
2023-01-05 20:03:10 +00:00
Patrick Monette
3ded71b389 Reland "Add BrowserChildProcessExitedNormally"
This is a reland of commit e97ada6c24

The revert did not fix the issue so I'm relanding it as-is. The
failing test was disabled in another CL.

Original change's description:
> Add BrowserChildProcessExitedNormally
>
> This new method allows an observer to get the ChildTerminationInfo data
> from a child process that terminates normally.
>
> Bug: 1313215
> Change-Id: Iafd41d9b54e3a47014d350aac0a7658d72ffa9b4
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3792828
> Commit-Queue: Patrick Monette <pmonette@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1050887}

Bug: 1313215
Change-Id: Idc623d03b1dde7fbc3f99913f5cecef99806c26e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3918751
Commit-Queue: Patrick Monette <pmonette@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1052399}
2022-09-28 14:53:04 +00:00
Nohemi Fernandez
98658b4efe Disable BrowserChildProcessObserverBrowserTest.LaunchAndCrash on Android.
The test has failed on both ARM64 and x86 builders, disabling across the
Android bots.

Bug: 1368044
Change-Id: Ie941e08b2969bd35f8d8c8aa0367a28755856d62
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3924080
Owners-Override: Nohemi Fernandez <fernandex@google.com>
Reviewed-by: Thiemo Nagel <tnagel@chromium.org>
Commit-Queue: Thiemo Nagel <tnagel@chromium.org>
Commit-Queue: Nohemi Fernandez <fernandex@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1052327}
2022-09-28 11:10:48 +00:00
Patrick Monette
1ea74185f1 Disable test timing out on android-arm64-tests
This has the same root cause of https://crbug.com/1358585, which is
very similar to this test.

Bug: 1368044
Change-Id: I7234dd93d2e84fadeb8c3cc6945d7fd9c812e90c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3921938
Reviewed-by: Bo Liu <boliu@chromium.org>
Commit-Queue: Patrick Monette <pmonette@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1051929}
2022-09-27 18:39:44 +00:00
Alex Ilin
bbeb404a7c Revert "Add BrowserChildProcessExitedNormally"
This reverts commit e97ada6c24.

Reason for revert: BrowserChildProcessObserverBrowserTest.LaunchAndCrash is failing on builder "android-arm64-tests" (https://crbug.com/1368044)

Original change's description:
> Add BrowserChildProcessExitedNormally
>
> This new method allows an observer to get the ChildTerminationInfo data
> from a child process that terminates normally.
>
> Bug: 1313215
> Change-Id: Iafd41d9b54e3a47014d350aac0a7658d72ffa9b4
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3792828
> Commit-Queue: Patrick Monette <pmonette@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1050887}

Bug: 1313215, 1368044
Change-Id: Ice434214a1042b12df71251d1795c9d3a90423cf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3917852
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Alex Ilin <alexilin@chromium.org>
Owners-Override: Alex Ilin <alexilin@google.com>
Cr-Commit-Position: refs/heads/main@{#1051180}
2022-09-26 13:15:58 +00:00
Patrick Monette
e97ada6c24 Add BrowserChildProcessExitedNormally
This new method allows an observer to get the ChildTerminationInfo data
from a child process that terminates normally.

Bug: 1313215
Change-Id: Iafd41d9b54e3a47014d350aac0a7658d72ffa9b4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3792828
Commit-Queue: Patrick Monette <pmonette@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1050887}
2022-09-24 01:12:13 +00:00
Patrick Monette
2b743d360c Add browser tests for BrowserChildProcessObserver
Bug: 977637
Change-Id: Ifc777a625e757e67c389a4fbd168fb4fb5111cc8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3842909
Reviewed-by: Bo Liu <boliu@chromium.org>
Commit-Queue: Patrick Monette <pmonette@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1050859}
2022-09-23 23:40:37 +00:00