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

Issue 1038783002: Add switch (for cast_shell) to defer creation of GPU process. (Closed)

Created:
5 years, 9 months ago by halliwell
Modified:
5 years, 9 months ago
CC:
chromium-reviews, darin-cc_chromium.org, jam, jbauman, danakj
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add switch (for cast_shell) to defer creation of GPU process. For context - on Chromecast, we have the following scenario: * We support running in the background (i.e. not rendering anything) with our service running in the browser process to listen for incoming cast connections. * We cannot acquire any GPU resources (e.g. a GL context or surface) during this time as another external application needs it, and it's a global resource. We have supported starting up in the foreground and switching to this mode for a long time. But now, we need to support starting up in this mode. In other words, we need to bring up the browser process and run our cast receiver service, but we cannot run any of the GPU process's initialisation code until an incoming cast arrives. BUG=internal b/19898960 Committed: https://crrev.com/db7efe6dfbda08faa1e55cda4441b43dac005733 Cr-Commit-Position: refs/heads/master@{#322655}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Removed CONTENT_EXPORT #

Total comments: 2

Patch Set 3 : Comment+naming update, reenable tests #

Total comments: 3

Patch Set 4 : Ensure BrowserGpuChannelHostFactory::Initialize is called. #

Total comments: 2

Patch Set 5 : A nit #

Patch Set 6 : Add CONTENT_EXPORT to switch #

Patch Set 7 : Disabled test on Chromeos, it won't pass there #

Patch Set 8 : Tests appear to be flaky on Windows, disabling there. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+27 lines, -10 lines) Patch
M content/browser/browser_main_loop.cc View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/gpu/gpu_ipc_browsertests.cc View 1 2 3 4 5 6 7 5 chunks +21 lines, -9 lines 0 comments Download
M content/public/common/content_switches.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M content/public/common/content_switches.cc View 1 2 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 42 (15 generated)
halliwell
5 years, 9 months ago (2015-03-26 01:02:24 UTC) #2
nasko
Codewise this looks fine (modulo one comment). Including enne@ to see if this makes sense ...
5 years, 9 months ago (2015-03-26 18:17:44 UTC) #4
halliwell
https://codereview.chromium.org/1038783002/diff/1/content/public/common/content_switches.h File content/public/common/content_switches.h (right): https://codereview.chromium.org/1038783002/diff/1/content/public/common/content_switches.h#newcode32 content/public/common/content_switches.h:32: CONTENT_EXPORT extern const char kDeferGpuProcessCreation[]; On 2015/03/26 18:17:44, nasko ...
5 years, 9 months ago (2015-03-26 18:30:23 UTC) #5
enne (OOO)
+piman,jbauman,danakj for opinions on ^
5 years, 9 months ago (2015-03-26 20:21:34 UTC) #7
danakj
+sievers Naively this seems okay, though I wish it wasn't a command line flag (like ...
5 years, 9 months ago (2015-03-26 20:23:32 UTC) #9
piman
lgtm https://codereview.chromium.org/1038783002/diff/20001/content/public/common/content_switches.cc File content/public/common/content_switches.cc (right): https://codereview.chromium.org/1038783002/diff/20001/content/public/common/content_switches.cc#newcode69 content/public/common/content_switches.cc:69: // for creating GPU process before it's needed. ...
5 years, 9 months ago (2015-03-26 20:26:19 UTC) #10
no sievers
On 2015/03/26 20:26:19, piman (Very slow to review) wrote: > lgtm > > https://codereview.chromium.org/1038783002/diff/20001/content/public/common/content_switches.cc > ...
5 years, 9 months ago (2015-03-26 20:35:29 UTC) #11
no sievers
btw, since there will be no testing and also no reference to the switch you ...
5 years, 9 months ago (2015-03-26 20:40:35 UTC) #12
halliwell
On 2015/03/26 20:40:35, sievers wrote: > btw, since there will be no testing and also ...
5 years, 9 months ago (2015-03-26 21:58:01 UTC) #13
halliwell
https://codereview.chromium.org/1038783002/diff/20001/content/public/common/content_switches.cc File content/public/common/content_switches.cc (right): https://codereview.chromium.org/1038783002/diff/20001/content/public/common/content_switches.cc#newcode69 content/public/common/content_switches.cc:69: // for creating GPU process before it's needed. On ...
5 years, 9 months ago (2015-03-26 21:58:12 UTC) #14
no sievers
https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc File content/browser/gpu/gpu_ipc_browsertests.cc (right): https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc#newcode84 content/browser/gpu/gpu_ipc_browsertests.cc:84: CHECK(GetFactory()); Doesn't this fail? Don't you still have to ...
5 years, 9 months ago (2015-03-26 22:05:29 UTC) #15
halliwell
https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc File content/browser/gpu/gpu_ipc_browsertests.cc (right): https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc#newcode84 content/browser/gpu/gpu_ipc_browsertests.cc:84: CHECK(GetFactory()); On 2015/03/26 22:05:29, sievers wrote: > Doesn't this ...
5 years, 9 months ago (2015-03-26 22:16:52 UTC) #16
no sievers
lgtm https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc File content/browser/gpu/gpu_ipc_browsertests.cc (right): https://codereview.chromium.org/1038783002/diff/40001/content/browser/gpu/gpu_ipc_browsertests.cc#newcode84 content/browser/gpu/gpu_ipc_browsertests.cc:84: CHECK(GetFactory()); On 2015/03/26 22:16:52, halliwell wrote: > On ...
5 years, 9 months ago (2015-03-26 23:16:19 UTC) #17
halliwell
https://codereview.chromium.org/1038783002/diff/60001/content/browser/gpu/gpu_ipc_browsertests.cc File content/browser/gpu/gpu_ipc_browsertests.cc (right): https://codereview.chromium.org/1038783002/diff/60001/content/browser/gpu/gpu_ipc_browsertests.cc#newcode97 content/browser/gpu/gpu_ipc_browsertests.cc:97: command_line->AppendSwitchASCII(switches::kDisableGpuEarlyInit, ""); On 2015/03/26 23:16:19, sievers wrote: > nit: ...
5 years, 9 months ago (2015-03-26 23:25:01 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1038783002/80001
5 years, 9 months ago (2015-03-26 23:25:54 UTC) #21
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/37485)
5 years, 9 months ago (2015-03-26 23:46:39 UTC) #23
halliwell
On 2015/03/26 23:46:39, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
5 years, 9 months ago (2015-03-26 23:49:47 UTC) #24
nasko
On 2015/03/26 23:49:47, halliwell wrote: > On 2015/03/26 23:46:39, I haz the power (commit-bot) wrote: ...
5 years, 9 months ago (2015-03-26 23:52:12 UTC) #25
halliwell
On 2015/03/26 23:52:12, nasko wrote: > On 2015/03/26 23:49:47, halliwell wrote: > > On 2015/03/26 ...
5 years, 9 months ago (2015-03-26 23:56:21 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1038783002/100001
5 years, 9 months ago (2015-03-26 23:57:11 UTC) #29
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/1981)
5 years, 9 months ago (2015-03-27 00:39:53 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1038783002/120001
5 years, 9 months ago (2015-03-27 16:26:24 UTC) #34
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/42260)
5 years, 9 months ago (2015-03-27 19:18:17 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1038783002/140001
5 years, 9 months ago (2015-03-27 20:27:44 UTC) #39
commit-bot: I haz the power
Committed patchset #8 (id:140001)
5 years, 9 months ago (2015-03-27 22:03:06 UTC) #40
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/db7efe6dfbda08faa1e55cda4441b43dac005733 Cr-Commit-Position: refs/heads/master@{#322655}
5 years, 9 months ago (2015-03-27 22:04:00 UTC) #41
danakj
5 years, 9 months ago (2015-03-27 22:56:59 UTC) #42
Message was sent while issue was closed.
A revert of this CL (patchset #8 id:140001) has been created in
https://codereview.chromium.org/1043603002/ by danakj@chromium.org.

The reason for reverting is: Breaking mac browser tests?

http://build.chromium.org/p/chromium.mac/builders/Mac10.6%20Tests/builds/436

BrowserGpuChannelHostFactoryTest.AlreadyEstablished (run #1):
[ RUN      ] BrowserGpuChannelHostFactoryTest.AlreadyEstablished
[35311:27139:0327/154011:20111614311426:ERROR:browser_gpu_channel_host_factory.cc(134)]
Failed to launch GPU process.
[35311:27139:0327/154011:20111614504937:ERROR:browser_gpu_channel_host_factory.cc(134)]
Failed to launch GPU process.
../../content/browser/gpu/gpu_ipc_browsertests.cc:179: Failure
Value of: event
  Actual: false
Expected: true
[  FAILED  ] BrowserGpuChannelHostFactoryTest.AlreadyEstablished, where
TypeParam =  and GetParam() =  (215 ms)
.

Powered by Google App Engine
This is Rietveld 408576698