Any includes to content/common/gpu from content/browser/* and content/renderer/* today should be moved to gpu/ipc/common.
This way only content/gpu can talk to gpu/ipc/service. We can enforce this through DEPS. Later when Mus needs the service code, we can add that to the DEPS file too.
It looks like the following files should move to gpu/ipc/common:
content/common/gpu/gpu_process_launch_causes.h
content/common/gpu/gpu_memory_uma_stats.h
content/common/gpu/gpu_surface_lookup.h
content/common/gpu/gpu_surface_lookup.cc
content/common/gpu/gpu_memory_buffer_factory.h
content/common/gpu/gpu_memory_buffer_factory.cc
content/common/gpu/accelerated_surface_buffers_swapped_params_mac.h
content/common/gpu/accelerated_surface_buffers_swapped_params_mac.cc
content/common/gpu/gpu_memory_buffer_factory_io_surface.h
content/common/gpu/gpu_memory_buffer_factory_io_surface.cc
// This file is weird. It refers to client code (I need to investigate): "content/common/gpu/client/gpu_memory_buffer_impl.h"
content/common/gpu/gpu_memory_buffer_factory_io_surface.cc
content/common/gpu/gpu_memory_buffer_factory_io_surface.h
content/common/gpu/gpu_memory_buffer_factory_surface_texture.h
content/common/gpu/gpu_memory_buffer_factory_surface_texture.cc
content/common/gpu/gpu_memory_buffer_factory_ozone_native_pixmap.h
content/common/gpu/gpu_memory_buffer_factory_ozone_native_pixmap.cc
Looks like we'll probably need to move content/common/gpu/establish_channel_params.h to gpu/ipc/common (it is used in GpuProcessHost but not included there currently, gpu_host_messages.h pulls it in).
I don't think establish_channel_params.h should be going to gpu/ipc, it's only used for the browser<->gpu process channel, so should be able to stay in content/
This patch addresses the GpuMemoryBufferFactory dependency I mentioned earlier:
https://codereview.chromium.org/1831513003/
After a bit more digging it seems accelerated_surface_buffers_swapped_params_mac.{h|cc} is better suited in content/common. I've begun work on that. Once that's done, I'll give the dependencies on content/common/gpu from content/browser and content/renderer another look and if all is good, I'll close this bug.
Comment 1 by fsam...@chromium.org
, Mar 20 2016