Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(400)

Issue 13845008: [Mac] Remove base::LaunchSynchronize and rewrite content::MachBroker. (Closed)

Created:
7 years, 8 months ago by Robert Sesek
Modified:
7 years, 8 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, erikwright+watch_chromium.org, jam, sail+watch_chromium.org
Visibility:
Public.

Description

[Mac] Remove base::LaunchSynchronize and rewrite content::MachBroker. This restructures the way MachBroker parent-child communication happens. Now, the MachBroker lock will be held for the duration of LaunchProcess until the PID is returned and inserted into the MachMap. Since the lock must also be acquired on the broker thread to insert the received task port into the MachMap, this ensures that the placeholder is always inserted before the task port. MachBroker has also been rewritten to use Mach IPC directly, rather than the C++ wrappers in base/mach_ipc_mac.h. The wrappers are not flexible enough to allow the use of an audit trailer. This trailer is used to verify the PID of the sender of the check in message in the parent. Previously, this was done by another kernel trap, pid_for_task. BUG=179923 Originally Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193486 Reverted: https://src.chromium.org/viewvc/chrome?view=rev&revision=193511 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193638

Patch Set 1 #

Total comments: 21

Patch Set 2 : Address comments #

Total comments: 2

Patch Set 3 : '' #

Patch Set 4 : Fix link_settings #

Unified diffs Side-by-side diffs Delta from patch set Stats (+240 lines, -543 lines) Patch
M base/mac/scoped_mach_port.h View 1 chunk +2 lines, -0 lines 0 comments Download
M base/mac/scoped_mach_port.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M base/process_util.h View 4 chunks +0 lines, -40 lines 0 comments Download
M base/process_util_posix.cc View 7 chunks +0 lines, -93 lines 0 comments Download
M content/app/content_main_runner.cc View 2 chunks +1 line, -27 lines 0 comments Download
M content/browser/child_process_launcher.cc View 1 chunk +18 lines, -18 lines 0 comments Download
M content/browser/mach_broker_mac.h View 3 chunks +25 lines, -30 lines 0 comments Download
D content/browser/mach_broker_mac.cc View 1 chunk +0 lines, -232 lines 0 comments Download
A + content/browser/mach_broker_mac.mm View 1 2 5 chunks +173 lines, -96 lines 0 comments Download
M content/browser/mach_broker_mac_unittest.cc View 3 chunks +10 lines, -6 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 2 chunks +6 lines, -1 line 0 comments Download

Messages

Total messages: 9 (0 generated)
Robert Sesek
Allays I put you a CL.
7 years, 8 months ago (2013-04-10 18:22:45 UTC) #1
Mark Mentovai
OK https://codereview.chromium.org/13845008/diff/1/content/browser/mach_broker_mac.mm File content/browser/mach_broker_mac.mm (right): https://codereview.chromium.org/13845008/diff/1/content/browser/mach_broker_mac.mm#newcode44 content/browser/mach_broker_mac.mm:44: // Complement to the ChildSendMsg, this is use ...
7 years, 8 months ago (2013-04-10 18:43:50 UTC) #2
Robert Sesek
https://codereview.chromium.org/13845008/diff/1/content/browser/mach_broker_mac.mm File content/browser/mach_broker_mac.mm (right): https://codereview.chromium.org/13845008/diff/1/content/browser/mach_broker_mac.mm#newcode44 content/browser/mach_broker_mac.mm:44: // Complement to the ChildSendMsg, this is use din ...
7 years, 8 months ago (2013-04-10 19:06:33 UTC) #3
Mark Mentovai
LGTM https://codereview.chromium.org/13845008/diff/7001/content/browser/mach_broker_mac.mm File content/browser/mach_broker_mac.mm (right): https://codereview.chromium.org/13845008/diff/7001/content/browser/mach_broker_mac.mm#newcode156 content/browser/mach_broker_mac.mm:156: // Create the check in message. This will ...
7 years, 8 months ago (2013-04-10 19:09:43 UTC) #4
Robert Sesek
Thanks! +Avi for OWNERS https://codereview.chromium.org/13845008/diff/7001/content/browser/mach_broker_mac.mm File content/browser/mach_broker_mac.mm (right): https://codereview.chromium.org/13845008/diff/7001/content/browser/mach_broker_mac.mm#newcode156 content/browser/mach_broker_mac.mm:156: // Create the check in ...
7 years, 8 months ago (2013-04-10 19:13:30 UTC) #5
Avi (use Gerrit)
lgtm stamp
7 years, 8 months ago (2013-04-10 20:54:34 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rsesek@chromium.org/13845008/12001
7 years, 8 months ago (2013-04-10 20:55:54 UTC) #7
commit-bot: I haz the power
Change committed as 193486
7 years, 8 months ago (2013-04-10 22:57:01 UTC) #8
Robert Sesek
7 years, 8 months ago (2013-04-11 14:27:33 UTC) #9
Message was sent while issue was closed.
Committed patchset #4 manually as r193638 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698