|
|
Created:
3 years, 11 months ago by sadrul Modified:
3 years, 11 months ago CC:
Aaron Boodman, abarth-chromium, chromium-reviews, darin (slow to review), darin-cc_chromium.org, jam, piman+watch_chromium.org, qsr+mojo_chromium.org, rjkroege, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
Descriptiongpu: Use mus gpu interface in non-mus chrome.
Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in
chrome. Notable changes:
. GpuChildThread becomes a mojom::GpuMain, and is responsible for
providing mojom::GpuService (implemented by GpuService in mus).
. GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking
to the gpu process using mojom::GpuService api, created through
mojom::GpuMain.
. GpuChildThread now depends on GpuService to provide implementation of
gpu::SyncPointManager (except on android-webview, where it still uses
the one provided by the ContentClient), gpu::GpuChannelManager,
media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In
subsequent CLs, GpuChildThread will depend on GpuService for
additional things (e.g. GpuMemoryBufferFactory etc.)
. Using GpuService from GpuChildThread allows removal of chrome IPC
msgs used by GpuChildThread for implementing GpuChannelManagerDelegate.
. Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends
this message to gpu process. Instead, it uses GpuMain::CreateGpuService
for initialization. Subsequent CLs will remove additional chrome IPC
messages, and replace them with appropriate mojom API in mojom::GpuHost
and mojom::GpuService.
Use associated interface for GpuMain to preserve message ordering, until
all the gpu messages are converted to use mojo.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
BUG=643746, 630895
Review-Url: https://codereview.chromium.org/2612623002
Cr-Commit-Position: refs/heads/master@{#445649}
Committed: https://chromium.googlesource.com/chromium/src/+/72aae8ab52b19f803d4a1ef794bb5783190bf32b
Patch Set 1 #Patch Set 2 : . #Patch Set 3 : . #Patch Set 4 : . #Patch Set 5 : . #Patch Set 6 : tot merge #Patch Set 7 : slim #Patch Set 8 : . #Patch Set 9 : . #Patch Set 10 : . #Patch Set 11 : . #Patch Set 12 : . #Patch Set 13 : . #Patch Set 14 : . #Patch Set 15 : . #Patch Set 16 : . #Patch Set 17 : cleanup #Patch Set 18 : more cleanup #
Total comments: 3
Messages
Total messages: 84 (76 generated)
Description was changed from ========== exp: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. ========== to ========== exp: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ==========
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_optional_gpu_tests_rel on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_optional_gpu_...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org
The CQ bit was unchecked by sadrul@chromium.org
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) ios-simulator-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator-xco...) mac_optional_gpu_tests_rel on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_optional_gpu_...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: chromeos_amd64-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...)
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== exp: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ========== to ========== exp: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ==========
Description was changed from ========== exp: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ========== to ========== gpu: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ==========
Description was changed from ========== gpu: Use mus gpu interface in non-mus chrome. Use associated interfaces to preserve message ordering, until all the gpu messages are converted to use mojo. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ========== to ========== gpu: Use mus gpu interface in non-mus chrome. Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in chrome. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. Use associated interface for GpuMain to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ==========
Description was changed from ========== gpu: Use mus gpu interface in non-mus chrome. Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in chrome. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. Subseq . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. Use associated interface for GpuMain to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ========== to ========== gpu: Use mus gpu interface in non-mus chrome. Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in chrome. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. Use associated interface for GpuMain to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ==========
Patchset #18 (id:340001) has been deleted
sadrul@chromium.org changed reviewers: + jbauman@chromium.org, rockot@chromium.org, tsepez@chromium.org
rockot@ for the use of associated interfaces (specifically, the code in GpuChildThread for |associated_interfaces_|) tsepez@ for the IPC removes in gpu_host_messages.h jbauman@ for owner review of the rest of the code. https://codereview.chromium.org/2612623002/diff/360001/content/browser/gpu/gp... File content/browser/gpu/gpu_process_host.cc (right): https://codereview.chromium.org/2612623002/diff/360001/content/browser/gpu/gp... content/browser/gpu/gpu_process_host.cc:962: OnDidCreateOffscreenContext(url); Note that I have deliberately kept the old ipc-message handlers, and call into those functions from these mojom callbacks. This is to make it clear that there are no functional changes in this code. I plan to remove the old message-handler functions, and move them into these callbacks in a no-op follow-on CL. If you prefer that I do that in this CL, let me know.
The CQ bit was checked by sadrul@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
RS LGTM on deleting messages.
lgtm https://codereview.chromium.org/2612623002/diff/360001/content/gpu/gpu_child_... File content/gpu/gpu_child_thread.cc (right): https://codereview.chromium.org/2612623002/diff/360001/content/gpu/gpu_child_... content/gpu/gpu_child_thread.cc:223: registry->AddInterface(base::Bind( nit: just use associated_interfaces_
https://codereview.chromium.org/2612623002/diff/360001/content/gpu/gpu_child_... File content/gpu/gpu_child_thread.cc (right): https://codereview.chromium.org/2612623002/diff/360001/content/gpu/gpu_child_... content/gpu/gpu_child_thread.cc:223: registry->AddInterface(base::Bind( On 2017/01/23 18:29:53, Ken Rockot wrote: > nit: just use associated_interfaces_ I tried that at first, but it gives me a compile error: ../../content/gpu/gpu_child_thread.cc:222:26: error: too few arguments to function call, expected 2, have 1; did you mean 'AssociatedInterfaceRegistry::AddInterface'? associated_interfaces_.AddInterface(base::Bind( ^~~~~~~~~~~~ AssociatedInterfaceRegistry::AddInterface ../../content/public/common/associated_interface_registry.h:36:16: note: 'AssociatedInterfaceRegistry::AddInterface' declared here virtual void AddInterface(const std::string& name, const Binder& binder) = 0; I have to use: associated_interfaces_.AssociatedInterfaceRegistry::AddInterface(base::Bind(... to fix the build error, which feels rather awkward. So I have kept it as is for now (although maybe there's a cleaner magic incantation I could use?)
Ah, that's unfortunate. Maybe we should fix that. Still LG to me as-is then. On Mon, Jan 23, 2017 at 11:57 AM, <sadrul@chromium.org> wrote: > > https://codereview.chromium.org/2612623002/diff/360001/ > content/gpu/gpu_child_thread.cc > File content/gpu/gpu_child_thread.cc (right): > > https://codereview.chromium.org/2612623002/diff/360001/ > content/gpu/gpu_child_thread.cc#newcode223 > content/gpu/gpu_child_thread.cc:223: registry->AddInterface(base::Bind( > On 2017/01/23 18:29:53, Ken Rockot wrote: > > nit: just use associated_interfaces_ > > I tried that at first, but it gives me a compile error: > > ../../content/gpu/gpu_child_thread.cc:222:26: error: too few arguments > to function call, expected 2, have 1; did you mean > 'AssociatedInterfaceRegistry::AddInterface'? > associated_interfaces_.AddInterface(base::Bind( > ^~~~~~~~~~~~ > AssociatedInterfaceRegistry::AddInterface > ../../content/public/common/associated_interface_registry.h:36:16: note: > 'AssociatedInterfaceRegistry::AddInterface' declared here > virtual void AddInterface(const std::string& name, const Binder& > binder) = 0; > > > I have to use: > > > associated_interfaces_.AssociatedInterfaceRegistry:: > AddInterface(base::Bind(... > > to fix the build error, which feels rather awkward. So I have kept it as > is for now (although maybe there's a cleaner magic incantation I could > use?) > > https://codereview.chromium.org/2612623002/ > -- You received this message because you are subscribed to the Google Groups "Chromium-reviews" group. To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
lgtm
The CQ bit was checked by sadrul@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 360001, "attempt_start_ts": 1485226707668010, "parent_rev": "e749d0e517205a0eb610c6f7667c40a123c19144", "commit_rev": "72aae8ab52b19f803d4a1ef794bb5783190bf32b"}
Message was sent while issue was closed.
Description was changed from ========== gpu: Use mus gpu interface in non-mus chrome. Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in chrome. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. Use associated interface for GpuMain to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 ========== to ========== gpu: Use mus gpu interface in non-mus chrome. Start using mojom::GpuMain, mojom::GpuHost, and mojom::GpuService API in chrome. Notable changes: . GpuChildThread becomes a mojom::GpuMain, and is responsible for providing mojom::GpuService (implemented by GpuService in mus). . GpuProcessHost becomes a mojom::GpuHost, and is responsible for talking to the gpu process using mojom::GpuService api, created through mojom::GpuMain. . GpuChildThread now depends on GpuService to provide implementation of gpu::SyncPointManager (except on android-webview, where it still uses the one provided by the ContentClient), gpu::GpuChannelManager, media::MediaGpuChannelManager, and gpu::GpuWatchdogThread. In subsequent CLs, GpuChildThread will depend on GpuService for additional things (e.g. GpuMemoryBufferFactory etc.) . Using GpuService from GpuChildThread allows removal of chrome IPC msgs used by GpuChildThread for implementing GpuChannelManagerDelegate. . Remove GpuMsg_Initialize message, since GpuProcessHost no longer sends this message to gpu process. Instead, it uses GpuMain::CreateGpuService for initialization. Subsequent CLs will remove additional chrome IPC messages, and replace them with appropriate mojom API in mojom::GpuHost and mojom::GpuService. Use associated interface for GpuMain to preserve message ordering, until all the gpu messages are converted to use mojo. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel BUG=643746, 630895 Review-Url: https://codereview.chromium.org/2612623002 Cr-Commit-Position: refs/heads/master@{#445649} Committed: https://chromium.googlesource.com/chromium/src/+/72aae8ab52b19f803d4a1ef794bb... ==========
Message was sent while issue was closed.
Committed patchset #18 (id:360001) as https://chromium.googlesource.com/chromium/src/+/72aae8ab52b19f803d4a1ef794bb... |