diff options
author | markdittmer <markdittmer@chromium.org> | 2016-02-23 11:16:11 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-02-23 19:17:57 +0000 |
commit | 6c1a70a5d0436c7c647c995202fbfa307f28983a (patch) | |
tree | 2c4ec28f1acc004d5bc76b304cd44a6b051a2fc2 | |
parent | c82a278bd475fd1a68d0b9452e028537f4263043 (diff) | |
download | chromium_src-6c1a70a5d0436c7c647c995202fbfa307f28983a.zip chromium_src-6c1a70a5d0436c7c647c995202fbfa307f28983a.tar.gz chromium_src-6c1a70a5d0436c7c647c995202fbfa307f28983a.tar.bz2 |
Move content:GPUVideo...Stats to gpu::Video...Stats. HolyJavaStyleNamingBatman!
As a part of the GPU refactor for Mus, we are trying to eliminate spots where content/common/gpu depends on
content/. One such dependency is content::GPUVideoMemoryUsageStats.
BUG=586367
CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel
Review URL: https://codereview.chromium.org/1708783002
Cr-Commit-Position: refs/heads/master@{#377036}
32 files changed, 200 insertions, 77 deletions
diff --git a/chrome/browser/task_management/sampling/task_group.cc b/chrome/browser/task_management/sampling/task_group.cc index 9911136..3787bd3 100644 --- a/chrome/browser/task_management/sampling/task_group.cc +++ b/chrome/browser/task_management/sampling/task_group.cc @@ -11,6 +11,7 @@ #include "chrome/browser/task_management/task_manager_observer.h" #include "components/nacl/browser/nacl_browser.h" #include "content/public/browser/browser_thread.h" +#include "gpu/ipc/common/memory_stats.h" namespace task_management { @@ -117,10 +118,9 @@ void TaskGroup::RemoveTask(Task* task) { tasks_.erase(task->task_id()); } -void TaskGroup::Refresh( - const content::GPUVideoMemoryUsageStats& gpu_memory_stats, - base::TimeDelta update_interval, - int64_t refresh_flags) { +void TaskGroup::Refresh(const gpu::VideoMemoryUsageStats& gpu_memory_stats, + base::TimeDelta update_interval, + int64_t refresh_flags) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); // First refresh the enabled non-expensive resources usages on the UI thread. @@ -180,7 +180,7 @@ Task* TaskGroup::GetTaskById(TaskId task_id) const { } void TaskGroup::RefreshGpuMemory( - const content::GPUVideoMemoryUsageStats& gpu_memory_stats) { + const gpu::VideoMemoryUsageStats& gpu_memory_stats) { auto itr = gpu_memory_stats.process_map.find(process_id_); if (itr == gpu_memory_stats.process_map.end()) { gpu_memory_ = -1; diff --git a/chrome/browser/task_management/sampling/task_group.h b/chrome/browser/task_management/sampling/task_group.h index 02459fd..a9276fd 100644 --- a/chrome/browser/task_management/sampling/task_group.h +++ b/chrome/browser/task_management/sampling/task_group.h @@ -18,7 +18,10 @@ #include "chrome/browser/task_management/providers/task.h" #include "chrome/browser/task_management/sampling/task_group_sampler.h" #include "chrome/browser/task_management/task_manager_observer.h" -#include "content/public/common/gpu_memory_stats.h" + +namespace gpu { +struct VideoMemoryUsageStats; +} namespace task_management { @@ -37,7 +40,7 @@ class TaskGroup { void AddTask(Task* task); void RemoveTask(Task* task); - void Refresh(const content::GPUVideoMemoryUsageStats& gpu_memory_stats, + void Refresh(const gpu::VideoMemoryUsageStats& gpu_memory_stats, base::TimeDelta update_interval, int64_t refresh_flags); @@ -82,8 +85,7 @@ class TaskGroup { int idle_wakeups_per_second() const { return idle_wakeups_per_second_; } private: - void RefreshGpuMemory( - const content::GPUVideoMemoryUsageStats& gpu_memory_stats); + void RefreshGpuMemory(const gpu::VideoMemoryUsageStats& gpu_memory_stats); void RefreshWindowsHandles(); diff --git a/chrome/browser/task_management/sampling/task_manager_impl.cc b/chrome/browser/task_management/sampling/task_manager_impl.cc index 7fee4a5..6ca6fe2 100644 --- a/chrome/browser/task_management/sampling/task_manager_impl.cc +++ b/chrome/browser/task_management/sampling/task_manager_impl.cc @@ -297,7 +297,7 @@ void TaskManagerImpl::TaskRemoved(Task* task) { } void TaskManagerImpl::OnVideoMemoryUsageStatsUpdate( - const content::GPUVideoMemoryUsageStats& gpu_memory_stats) { + const gpu::VideoMemoryUsageStats& gpu_memory_stats) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); gpu_memory_stats_ = gpu_memory_stats; diff --git a/chrome/browser/task_management/sampling/task_manager_impl.h b/chrome/browser/task_management/sampling/task_manager_impl.h index 562b8dc..0f0eedd 100644 --- a/chrome/browser/task_management/sampling/task_manager_impl.h +++ b/chrome/browser/task_management/sampling/task_manager_impl.h @@ -20,6 +20,7 @@ #include "chrome/browser/task_management/sampling/task_manager_io_thread_helper.h" #include "chrome/browser/task_management/task_manager_interface.h" #include "content/public/browser/gpu_data_manager_observer.h" +#include "gpu/ipc/common/memory_stats.h" namespace task_management { @@ -77,7 +78,7 @@ class TaskManagerImpl : // content::GpuDataManagerObserver: void OnVideoMemoryUsageStatsUpdate( - const content::GPUVideoMemoryUsageStats& gpu_memory_stats) override; + const gpu::VideoMemoryUsageStats& gpu_memory_stats) override; // The notification method on the UI thread when multiple bytes are read // from URLRequests. This will be called by the |io_thread_helper_| @@ -126,7 +127,7 @@ class TaskManagerImpl : // The current GPU memory usage stats that was last received from the // GpuDataManager. - content::GPUVideoMemoryUsageStats gpu_memory_stats_; + gpu::VideoMemoryUsageStats gpu_memory_stats_; // The specific blocking pool SequencedTaskRunner that will be used to make // sure TaskGroupSampler posts their refreshes serially. diff --git a/chrome/browser/task_manager/task_manager.cc b/chrome/browser/task_manager/task_manager.cc index 3cfb995..eb52d8e 100644 --- a/chrome/browser/task_manager/task_manager.cc +++ b/chrome/browser/task_manager/task_manager.cc @@ -180,13 +180,13 @@ class TaskManagerModelGpuDataManagerObserver } static void NotifyVideoMemoryUsageStats( - const content::GPUVideoMemoryUsageStats& video_memory_usage_stats) { + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) { TaskManager::GetInstance()->model()->NotifyVideoMemoryUsageStats( video_memory_usage_stats); } - void OnVideoMemoryUsageStatsUpdate(const content::GPUVideoMemoryUsageStats& - video_memory_usage_stats) override { + void OnVideoMemoryUsageStatsUpdate( + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) override { if (BrowserThread::CurrentlyOn(BrowserThread::UI)) { NotifyVideoMemoryUsageStats(video_memory_usage_stats); } else { @@ -662,7 +662,7 @@ bool TaskManagerModel::GetVideoMemory(int index, PerProcessValues& values( per_process_cache_[GetResource(index)->GetProcess()]); if (!values.is_video_memory_valid) { - content::GPUVideoMemoryUsageStats::ProcessMap::const_iterator i = + gpu::VideoMemoryUsageStats::ProcessMap::const_iterator i = video_memory_usage_stats_.process_map.find(pid); if (i == video_memory_usage_stats_.process_map.end()) return false; @@ -1248,7 +1248,7 @@ void TaskManagerModel::Refresh() { } void TaskManagerModel::NotifyVideoMemoryUsageStats( - const content::GPUVideoMemoryUsageStats& video_memory_usage_stats) { + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) { DCHECK(pending_video_memory_usage_stats_update_); video_memory_usage_stats_ = video_memory_usage_stats; pending_video_memory_usage_stats_update_ = false; diff --git a/chrome/browser/task_manager/task_manager.h b/chrome/browser/task_manager/task_manager.h index 5e4e1cc..a10ea21 100644 --- a/chrome/browser/task_manager/task_manager.h +++ b/chrome/browser/task_manager/task_manager.h @@ -21,7 +21,7 @@ #include "build/build_config.h" #include "chrome/browser/task_manager/resource_provider.h" #include "chrome/browser/ui/host_desktop.h" -#include "content/public/common/gpu_memory_stats.h" +#include "gpu/ipc/common/memory_stats.h" #include "third_party/WebKit/public/web/WebCache.h" class PrefRegistrySimple; @@ -298,7 +298,7 @@ class TaskManagerModel : public base::RefCountedThreadSafe<TaskManagerModel> { void RefreshPhysicalMemoryFromWorkingSetSnapshot(); void NotifyVideoMemoryUsageStats( - const content::GPUVideoMemoryUsageStats& video_memory_usage_stats); + const gpu::VideoMemoryUsageStats& video_memory_usage_stats); void NotifyBytesRead(const net::URLRequest& request, int64_t bytes_read); @@ -509,7 +509,7 @@ class TaskManagerModel : public base::RefCountedThreadSafe<TaskManagerModel> { ResourceValueMap current_byte_count_map_; // A map that contains the video memory usage for a process - content::GPUVideoMemoryUsageStats video_memory_usage_stats_; + gpu::VideoMemoryUsageStats video_memory_usage_stats_; // Set to true when we've requested video stats and false once we get them. bool pending_video_memory_usage_stats_update_; diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 889ea38..fd35607 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -3476,6 +3476,7 @@ 'sync_file_system_drive_proto', '../components/components.gyp:cryptauth', '../components/components.gyp:drive', + '../gpu/gpu.gyp:gpu_ipc_common', '../media/cast/cast.gyp:cast_net', ], 'sources': [ '<@(chrome_browser_extensions_sources)' ], @@ -3492,6 +3493,7 @@ }], ['enable_task_manager==1', { 'sources': [ '<@(chrome_browser_task_manager_sources)' ], + 'dependencies': [ '../gpu/gpu.gyp:gpu_ipc_common' ], 'conditions': [ ['chromeos==1', { 'sources': [ '<@(chrome_browser_task_manager_chromeos_sources)' ], diff --git a/chrome/chrome_tests_unit.gypi b/chrome/chrome_tests_unit.gypi index 140c697..0bb65bd 100644 --- a/chrome/chrome_tests_unit.gypi +++ b/chrome/chrome_tests_unit.gypi @@ -2432,6 +2432,7 @@ }], ['enable_task_manager==1', { 'sources': [ '<@(chrome_unit_tests_task_manager_sources)' ], + 'dependencies': [ '../gpu/gpu.gyp:gpu_ipc_common' ], }], ['enable_mdns==1', { 'sources': [ '<@(chrome_unit_tests_mdns_sources)' ], diff --git a/content/browser/gpu/gpu_data_manager_impl.cc b/content/browser/gpu/gpu_data_manager_impl.cc index 19f6788..88fcf97 100644 --- a/content/browser/gpu/gpu_data_manager_impl.cc +++ b/content/browser/gpu/gpu_data_manager_impl.cc @@ -5,6 +5,7 @@ #include "content/browser/gpu/gpu_data_manager_impl.h" #include "content/browser/gpu/gpu_data_manager_impl_private.h" +#include "gpu/ipc/common/memory_stats.h" namespace content { @@ -144,7 +145,7 @@ void GpuDataManagerImpl::UpdateGpuInfo(const gpu::GPUInfo& gpu_info) { } void GpuDataManagerImpl::UpdateVideoMemoryUsageStats( - const GPUVideoMemoryUsageStats& video_memory_usage_stats) { + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) { base::AutoLock auto_lock(lock_); private_->UpdateVideoMemoryUsageStats(video_memory_usage_stats); } diff --git a/content/browser/gpu/gpu_data_manager_impl.h b/content/browser/gpu/gpu_data_manager_impl.h index 2b484cc..f94a39c 100644 --- a/content/browser/gpu/gpu_data_manager_impl.h +++ b/content/browser/gpu/gpu_data_manager_impl.h @@ -21,7 +21,6 @@ #include "base/time/time.h" #include "base/values.h" #include "content/public/browser/gpu_data_manager.h" -#include "content/public/common/gpu_memory_stats.h" #include "content/public/common/three_d_api_types.h" #include "gpu/config/gpu_info.h" @@ -31,6 +30,10 @@ namespace base { class CommandLine; } +namespace gpu { +struct VideoMemoryUsageStats; +} + namespace content { class GpuDataManagerImplPrivate; @@ -103,7 +106,7 @@ class CONTENT_EXPORT GpuDataManagerImpl void UpdateGpuInfo(const gpu::GPUInfo& gpu_info); void UpdateVideoMemoryUsageStats( - const GPUVideoMemoryUsageStats& video_memory_usage_stats); + const gpu::VideoMemoryUsageStats& video_memory_usage_stats); // Insert disable-feature switches corresponding to preliminary gpu feature // flags into the renderer process command line. diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc index 6b57bcf..3f655bb 100644 --- a/content/browser/gpu/gpu_data_manager_impl_private.cc +++ b/content/browser/gpu/gpu_data_manager_impl_private.cc @@ -32,6 +32,7 @@ #include "gpu/config/gpu_info_collector.h" #include "gpu/config/gpu_switches.h" #include "gpu/config/gpu_util.h" +#include "gpu/ipc/common/memory_stats.h" #include "ui/base/ui_base_switches.h" #include "ui/gl/gl_implementation.h" #include "ui/gl/gl_switches.h" @@ -644,7 +645,7 @@ void GpuDataManagerImplPrivate::UpdateGpuInfo(const gpu::GPUInfo& gpu_info) { } void GpuDataManagerImplPrivate::UpdateVideoMemoryUsageStats( - const GPUVideoMemoryUsageStats& video_memory_usage_stats) { + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) { GpuDataManagerImpl::UnlockedSession session(owner_); observer_list_->Notify(FROM_HERE, &GpuDataManagerObserver::OnVideoMemoryUsageStatsUpdate, diff --git a/content/browser/gpu/gpu_data_manager_impl_private.h b/content/browser/gpu/gpu_data_manager_impl_private.h index 887703b..ca98ab2 100644 --- a/content/browser/gpu/gpu_data_manager_impl_private.h +++ b/content/browser/gpu/gpu_data_manager_impl_private.h @@ -28,6 +28,10 @@ namespace base { class CommandLine; } +namespace gpu { +struct VideoMemoryUsageStats; +} + namespace content { class CONTENT_EXPORT GpuDataManagerImplPrivate { @@ -66,7 +70,7 @@ class CONTENT_EXPORT GpuDataManagerImplPrivate { void UpdateGpuInfo(const gpu::GPUInfo& gpu_info); void UpdateVideoMemoryUsageStats( - const GPUVideoMemoryUsageStats& video_memory_usage_stats); + const gpu::VideoMemoryUsageStats& video_memory_usage_stats); void AppendRendererCommandLine(base::CommandLine* command_line) const; diff --git a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc index e98046c..a9a189d 100644 --- a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc +++ b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc @@ -15,6 +15,7 @@ #include "gpu/config/gpu_feature_type.h" #include "gpu/config/gpu_info.h" #include "gpu/config/gpu_switches.h" +#include "gpu/ipc/common/memory_stats.h" #include "testing/gtest/include/gtest/gtest.h" #include "url/gurl.h" @@ -43,7 +44,7 @@ class TestObserver : public GpuDataManagerObserver { void OnGpuInfoUpdate() override { gpu_info_updated_ = true; } void OnVideoMemoryUsageStatsUpdate( - const GPUVideoMemoryUsageStats& stats) override { + const gpu::VideoMemoryUsageStats& stats) override { video_memory_usage_stats_updated_ = true; } @@ -356,7 +357,7 @@ TEST_F(GpuDataManagerImplPrivateTest, GPUVideoMemoryUsageStatsUpdate) { } EXPECT_FALSE(observer.video_memory_usage_stats_updated()); - GPUVideoMemoryUsageStats vram_stats; + gpu::VideoMemoryUsageStats vram_stats; manager->UpdateVideoMemoryUsageStats(vram_stats); { base::RunLoop run_loop; diff --git a/content/browser/gpu/gpu_process_host_ui_shim.cc b/content/browser/gpu/gpu_process_host_ui_shim.cc index f50db21..52d1d8d 100644 --- a/content/browser/gpu/gpu_process_host_ui_shim.cc +++ b/content/browser/gpu/gpu_process_host_ui_shim.cc @@ -24,6 +24,7 @@ #include "content/browser/renderer_host/render_widget_host_view_base.h" #include "content/common/gpu/gpu_messages.h" #include "content/public/browser/browser_thread.h" +#include "gpu/ipc/common/memory_stats.h" #if defined(OS_MACOSX) #include "ui/accelerated_widget_mac/accelerated_widget_mac.h" @@ -271,7 +272,7 @@ void GpuProcessHostUIShim::OnAcceleratedSurfaceBuffersSwapped( #endif void GpuProcessHostUIShim::OnVideoMemoryUsageStatsReceived( - const GPUVideoMemoryUsageStats& video_memory_usage_stats) { + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) { GpuDataManagerImpl::GetInstance()->UpdateVideoMemoryUsageStats( video_memory_usage_stats); } diff --git a/content/browser/gpu/gpu_process_host_ui_shim.h b/content/browser/gpu/gpu_process_host_ui_shim.h index e37eda0..3276833 100644 --- a/content/browser/gpu/gpu_process_host_ui_shim.h +++ b/content/browser/gpu/gpu_process_host_ui_shim.h @@ -21,8 +21,8 @@ #include "base/threading/non_thread_safe.h" #include "build/build_config.h" #include "content/common/content_export.h" -#include "content/public/common/gpu_memory_stats.h" #include "gpu/config/gpu_info.h" +#include "gpu/ipc/common/memory_stats.h" #include "ipc/ipc_listener.h" #include "ipc/ipc_sender.h" #include "ipc/message_router.h" @@ -43,6 +43,10 @@ namespace IPC { class Message; } +namespace gpu { +struct VideoMemoryUsageStats; +} + namespace content { void RouteToGpuProcessHostUIShimTask(int host_id, const IPC::Message& msg); @@ -101,7 +105,7 @@ class GpuProcessHostUIShim : public IPC::Listener, const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& params); #endif void OnVideoMemoryUsageStatsReceived( - const GPUVideoMemoryUsageStats& video_memory_usage_stats); + const gpu::VideoMemoryUsageStats& video_memory_usage_stats); void OnAddSubscription(int32_t process_id, unsigned int target); void OnRemoveSubscription(int32_t process_id, unsigned int target); diff --git a/content/common/gpu/gpu_memory_manager.cc b/content/common/gpu/gpu_memory_manager.cc index 10f769c..85aa15f 100644 --- a/content/common/gpu/gpu_memory_manager.cc +++ b/content/common/gpu/gpu_memory_manager.cc @@ -18,6 +18,7 @@ #include "content/common/gpu/gpu_messages.h" #include "gpu/command_buffer/common/gpu_memory_allocation.h" #include "gpu/command_buffer/service/gpu_switches.h" +#include "gpu/ipc/common/memory_stats.h" using gpu::MemoryAllocation; @@ -91,7 +92,7 @@ void GpuMemoryManager::OnDestroyTrackingGroup( } void GpuMemoryManager::GetVideoMemoryUsageStats( - GPUVideoMemoryUsageStats* video_memory_usage_stats) const { + gpu::VideoMemoryUsageStats* video_memory_usage_stats) const { // For each context group, assign its memory usage to its PID video_memory_usage_stats->process_map.clear(); for (TrackingGroupMap::const_iterator i = diff --git a/content/common/gpu/gpu_memory_manager.h b/content/common/gpu/gpu_memory_manager.h index 7de22e5..b83e220 100644 --- a/content/common/gpu/gpu_memory_manager.h +++ b/content/common/gpu/gpu_memory_manager.h @@ -16,10 +16,13 @@ #include "base/macros.h" #include "base/memory/weak_ptr.h" #include "content/common/content_export.h" -#include "content/public/common/gpu_memory_stats.h" #include "gpu/command_buffer/common/gpu_memory_allocation.h" #include "gpu/command_buffer/service/memory_tracking.h" +namespace gpu { +struct VideoMemoryUsageStats; +} + namespace content { class GpuChannelManager; @@ -33,7 +36,7 @@ class CONTENT_EXPORT GpuMemoryManager : // Retrieve GPU Resource consumption statistics for the task manager void GetVideoMemoryUsageStats( - content::GPUVideoMemoryUsageStats* video_memory_usage_stats) const; + gpu::VideoMemoryUsageStats* video_memory_usage_stats) const; GpuMemoryTrackingGroup* CreateTrackingGroup( base::ProcessId pid, gpu::gles2::MemoryTracker* memory_tracker); diff --git a/content/common/gpu/gpu_messages.h b/content/common/gpu/gpu_messages.h index e4db8b3..e4b4f68 100644 --- a/content/common/gpu/gpu_messages.h +++ b/content/common/gpu/gpu_messages.h @@ -18,7 +18,6 @@ #include "content/common/gpu/gpu_process_launch_causes.h" #include "content/common/gpu/gpu_stream_constants.h" #include "content/public/common/common_param_traits.h" -#include "content/public/common/gpu_memory_stats.h" #include "gpu/command_buffer/common/capabilities.h" #include "gpu/command_buffer/common/command_buffer.h" #include "gpu/command_buffer/common/constants.h" @@ -27,6 +26,7 @@ #include "gpu/command_buffer/common/sync_token.h" #include "gpu/command_buffer/common/value_state.h" #include "gpu/config/gpu_info.h" +#include "gpu/ipc/common/memory_stats.h" #include "gpu/ipc/gpu_command_buffer_traits.h" #include "ipc/ipc_channel_handle.h" #include "ipc/ipc_message_macros.h" @@ -285,12 +285,12 @@ IPC_STRUCT_TRAITS_BEGIN(gpu::GPUInfo) IPC_STRUCT_TRAITS_MEMBER(jpeg_decode_accelerator_supported) IPC_STRUCT_TRAITS_END() -IPC_STRUCT_TRAITS_BEGIN(content::GPUVideoMemoryUsageStats::ProcessStats) +IPC_STRUCT_TRAITS_BEGIN(gpu::VideoMemoryUsageStats::ProcessStats) IPC_STRUCT_TRAITS_MEMBER(video_memory) IPC_STRUCT_TRAITS_MEMBER(has_duplicates) IPC_STRUCT_TRAITS_END() -IPC_STRUCT_TRAITS_BEGIN(content::GPUVideoMemoryUsageStats) +IPC_STRUCT_TRAITS_BEGIN(gpu::VideoMemoryUsageStats) IPC_STRUCT_TRAITS_MEMBER(process_map) IPC_STRUCT_TRAITS_MEMBER(bytes_allocated) IPC_STRUCT_TRAITS_MEMBER(bytes_allocated_historical_max) @@ -447,7 +447,7 @@ IPC_MESSAGE_CONTROL1(GpuHostMsg_GraphicsInfoCollected, // Response from GPU to a GpuMsg_GetVideoMemory. IPC_MESSAGE_CONTROL1(GpuHostMsg_VideoMemoryUsageStats, - content::GPUVideoMemoryUsageStats /* GPU memory stats */) + gpu::VideoMemoryUsageStats /* GPU memory stats */) // Message from GPU to add a GPU log message to the about:gpu page. IPC_MESSAGE_CONTROL3(GpuHostMsg_OnLogMessage, diff --git a/content/content_browser.gypi b/content/content_browser.gypi index 95ba849..8886f75 100644 --- a/content/content_browser.gypi +++ b/content/content_browser.gypi @@ -21,6 +21,7 @@ '../device/vibration/vibration.gyp:device_vibration_mojo_bindings', '../gin/gin.gyp:gin', '../google_apis/google_apis.gyp:google_apis', + '../gpu/gpu.gyp:gpu_ipc_common', '../mojo/mojo_base.gyp:mojo_application_base', '../mojo/mojo_base.gyp:mojo_geometry_lib', '../mojo/mojo_base.gyp:mojo_url_type_converters', diff --git a/content/content_common.gypi b/content/content_common.gypi index 4de364b..d02b5dc 100644 --- a/content/content_common.gypi +++ b/content/content_common.gypi @@ -17,6 +17,7 @@ # content and moved to android_webview. See crbug.com/365797. '../gpu/gpu.gyp:gl_in_process_context', '../gpu/gpu.gyp:gpu_ipc', + '../gpu/gpu.gyp:gpu_ipc_common', '../gpu/skia_bindings/skia_bindings.gyp:gpu_skia_bindings', '../ipc/ipc.gyp:ipc', '../ipc/mojo/ipc_mojo.gyp:ipc_mojo', @@ -130,8 +131,6 @@ 'public/common/frame_navigate_params.h', 'public/common/geoposition.cc', 'public/common/geoposition.h', - 'public/common/gpu_memory_stats.cc', - 'public/common/gpu_memory_stats.h', 'public/common/injection_test_mac.h', 'public/common/injection_test_win.h', 'public/common/javascript_message_type.h', diff --git a/content/content_gpu.gypi b/content/content_gpu.gypi index f9dd636..1de8557 100644 --- a/content/content_gpu.gypi +++ b/content/content_gpu.gypi @@ -5,6 +5,7 @@ { 'dependencies': [ '../base/base.gyp:base', + '../gpu/gpu.gyp:gpu_ipc_common', '../skia/skia.gyp:skia', '../ui/gl/gl.gyp:gl', 'content_common_mojo_bindings.gyp:content_common_mojo_bindings', diff --git a/content/content_tests.gypi b/content/content_tests.gypi index 42e6638..486f1bc 100644 --- a/content/content_tests.gypi +++ b/content/content_tests.gypi @@ -1161,6 +1161,7 @@ '../device/bluetooth/bluetooth.gyp:device_bluetooth', '../gin/gin.gyp:gin', '../gpu/gpu.gyp:gpu', + '../gpu/gpu.gyp:gpu_ipc_common', '../gpu/gpu.gyp:gpu_unittest_utils', '../ipc/ipc.gyp:test_support_ipc', '../media/media.gyp:media_test_support', diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn index 3bc1845..8877864 100644 --- a/content/gpu/BUILD.gn +++ b/content/gpu/BUILD.gn @@ -44,6 +44,7 @@ source_set("gpu_sources") { "//base", "//content:export", "//content/public/child:child_sources", + "//gpu/ipc/common:ipc_common_sources", "//mojo/shell/public/interfaces", "//skia", "//ui/gl", diff --git a/content/gpu/gpu_child_thread.cc b/content/gpu/gpu_child_thread.cc index 6ea7e2e..7b4450b 100644 --- a/content/gpu/gpu_child_thread.cc +++ b/content/gpu/gpu_child_thread.cc @@ -22,6 +22,7 @@ #include "content/public/common/content_switches.h" #include "content/public/gpu/content_gpu_client.h" #include "gpu/config/gpu_info_collector.h" +#include "gpu/ipc/common/memory_stats.h" #include "ipc/ipc_channel_handle.h" #include "ipc/ipc_sync_message_filter.h" #include "ui/gl/gl_implementation.h" @@ -351,7 +352,7 @@ void GpuChildThread::OnCollectGraphicsInfo() { } void GpuChildThread::OnGetVideoMemoryUsageStats() { - GPUVideoMemoryUsageStats video_memory_usage_stats; + gpu::VideoMemoryUsageStats video_memory_usage_stats; if (gpu_channel_manager_) gpu_channel_manager_->gpu_memory_manager()->GetVideoMemoryUsageStats( &video_memory_usage_stats); diff --git a/content/public/browser/gpu_data_manager_observer.h b/content/public/browser/gpu_data_manager_observer.h index 2f36feb..64a6b9e 100644 --- a/content/public/browser/gpu_data_manager_observer.h +++ b/content/public/browser/gpu_data_manager_observer.h @@ -7,11 +7,14 @@ #include "base/process/kill.h" #include "content/common/content_export.h" -#include "content/public/common/gpu_memory_stats.h" #include "content/public/common/three_d_api_types.h" class GURL; +namespace gpu { +struct VideoMemoryUsageStats; +} + namespace content { // Observers can register themselves via GpuDataManager::AddObserver, and @@ -23,7 +26,7 @@ class CONTENT_EXPORT GpuDataManagerObserver { // Called for any observers whenever there is a GPU video memory update. virtual void OnVideoMemoryUsageStatsUpdate( - const GPUVideoMemoryUsageStats& video_memory_usage_stats) {} + const gpu::VideoMemoryUsageStats& video_memory_usage_stats) {} // Indicates that client 3D APIs (Pepper 3D, WebGL) were just blocked on the // given page, specifically because the GPU was reset recently. diff --git a/content/public/common/gpu_memory_stats.cc b/content/public/common/gpu_memory_stats.cc deleted file mode 100644 index 2b4e0fa..0000000 --- a/content/public/common/gpu_memory_stats.cc +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "content/public/common/gpu_memory_stats.h" - -namespace content { - -GPUVideoMemoryUsageStats::GPUVideoMemoryUsageStats() - : bytes_allocated(0), - bytes_allocated_historical_max(0) { -} - -GPUVideoMemoryUsageStats::~GPUVideoMemoryUsageStats() { -} - -GPUVideoMemoryUsageStats::ProcessStats::ProcessStats() - : video_memory(0), - has_duplicates(false) { -} - -GPUVideoMemoryUsageStats::ProcessStats::~ProcessStats() { -} - -} // namespace content diff --git a/gpu/BUILD.gn b/gpu/BUILD.gn index c3f82eb..bf1d6b0 100644 --- a/gpu/BUILD.gn +++ b/gpu/BUILD.gn @@ -46,6 +46,7 @@ component("gpu") { "//gpu/command_buffer/service:service_sources", "//gpu/config:config_sources", "//gpu/ipc:ipc_sources", + "//gpu/ipc/common:ipc_common_sources", ] } diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp index 2ad775d..8d5343f 100644 --- a/gpu/gpu.gyp +++ b/gpu/gpu.gyp @@ -523,6 +523,7 @@ 'gles2_cmd_helper', 'gpu_config', 'gpu_ipc', + 'gpu_ipc_common', ], 'sources': [ 'gpu_export.h', @@ -603,6 +604,14 @@ ], }, { + # GN version: //gpu/ipc/common + 'target_name': 'gpu_ipc_common', + 'type': 'static_library', + 'includes': [ + 'gpu_ipc_common.gypi', + ], + }, + { 'target_name': 'gpu_config', 'type': 'static_library', 'includes': [ @@ -635,6 +644,7 @@ 'gles2_cmd_helper.gypi', 'gpu_config.gypi', 'gpu_ipc.gypi', + 'gpu_ipc_common.gypi', '../build/android/increase_size_for_speed.gypi', ], 'defines': [ @@ -694,6 +704,14 @@ 'gpu', ], }, + { + # GN version: //gpu/ipc/common + 'target_name': 'gpu_ipc_common', + 'type': 'none', + 'dependencies': [ + 'gpu', + ], + }, ], }], ['disable_nacl!=1 and OS=="win" and target_arch=="ia32"', { @@ -744,6 +762,30 @@ }, }, }, + { + 'target_name': 'gpu_ipc_common_win64', + 'type': 'static_library', + 'variables': { + 'nacl_win64_target': 1, + }, + 'includes': [ + 'gpu_ipc_common.gypi', + ], + 'dependencies': [ + '../base/base.gyp:base_win64', + '../ipc/ipc.gyp:ipc_win64', + 'command_buffer_common_win64', + ], + 'defines': [ + '<@(nacl_win64_defines)', + 'GPU_IMPLEMENTATION', + ], + 'configurations': { + 'Common_Base': { + 'msvs_target_platform': 'x64', + }, + }, + }, ], }], ['OS == "android"', { diff --git a/gpu/gpu_ipc_common.gypi b/gpu/gpu_ipc_common.gypi new file mode 100644 index 0000000..d139515 --- /dev/null +++ b/gpu/gpu_ipc_common.gypi @@ -0,0 +1,26 @@ +# Copyright (c) 2016 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +{ + 'dependencies': [ + '../ipc/ipc.gyp:ipc', + ], + 'include_dirs': [ + '..', + ], + 'sources': [ + 'ipc/common/memory_stats.cc', + 'ipc/common/memory_stats.h', + ], + 'conditions': [ + # This section applies to gpu_ipc_win64, used by the NaCl Win64 helper + # (nacl64.exe). + ['nacl_win64_target==1', { + # gpu_ipc_win64 must only link against the 64-bit ipc target. + 'dependencies!': [ + '../ipc/ipc.gyp:ipc', + ], + }], + ], +} diff --git a/gpu/ipc/common/BUILD.gn b/gpu/ipc/common/BUILD.gn new file mode 100644 index 0000000..b77a9f9 --- /dev/null +++ b/gpu/ipc/common/BUILD.gn @@ -0,0 +1,28 @@ +# Copyright 2016 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +group("ipc") { + if (is_component_build) { + public_deps = [ + "//gpu", + ] + } else { + public_deps = [ + ":ipc_common_sources", + ] + } +} + +source_set("ipc_common_sources") { + sources = [ + "memory_stats.cc", + "memory_stats.h", + ] + + configs += [ "//gpu:gpu_implementation" ] + + deps = [ + "//ipc", + ] +} diff --git a/gpu/ipc/common/memory_stats.cc b/gpu/ipc/common/memory_stats.cc new file mode 100644 index 0000000..af55e48 --- /dev/null +++ b/gpu/ipc/common/memory_stats.cc @@ -0,0 +1,19 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "gpu/ipc/common/memory_stats.h" + +namespace gpu { + +VideoMemoryUsageStats::VideoMemoryUsageStats() + : bytes_allocated(0), bytes_allocated_historical_max(0) {} + +VideoMemoryUsageStats::~VideoMemoryUsageStats() {} + +VideoMemoryUsageStats::ProcessStats::ProcessStats() + : video_memory(0), has_duplicates(false) {} + +VideoMemoryUsageStats::ProcessStats::~ProcessStats() {} + +} // namespace gpu diff --git a/content/public/common/gpu_memory_stats.h b/gpu/ipc/common/memory_stats.h index ed358ab..ecc3944 100644 --- a/content/public/common/gpu_memory_stats.h +++ b/gpu/ipc/common/memory_stats.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ -#define CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ +#ifndef GPU_IPC_COMMON_MEMORY_STATS_H_ +#define GPU_IPC_COMMON_MEMORY_STATS_H_ // Provides access to the GPU information for the system // on which chrome is currently running. @@ -13,17 +13,17 @@ #include <map> #include "base/process/process.h" -#include "content/common/content_export.h" +#include "gpu/gpu_export.h" -namespace content { +namespace gpu { // Note: we use uint64_t instead of size_t for byte count because this struct // is sent over IPC which could span 32 & 64 bit processes. -struct CONTENT_EXPORT GPUVideoMemoryUsageStats { - GPUVideoMemoryUsageStats(); - ~GPUVideoMemoryUsageStats(); +struct GPU_EXPORT VideoMemoryUsageStats { + VideoMemoryUsageStats(); + ~VideoMemoryUsageStats(); - struct CONTENT_EXPORT ProcessStats { + struct GPU_EXPORT ProcessStats { ProcessStats(); ~ProcessStats(); @@ -47,6 +47,6 @@ struct CONTENT_EXPORT GPUVideoMemoryUsageStats { uint64_t bytes_allocated_historical_max; }; -} // namespace content +} // namespace gpu -#endif // CONTENT_PUBLIC_COMMON_GPU_MEMORY_STATS_H_ +#endif // GPU_IPC_COMMON_MEMORY_STATS_H_ |