gpu: Add IOSurface backed GpuMemoryBuffer implementation.
    
This adds a GpuMemoryBuffer implementation on MacOSX that is backed
by IOSurfaces. These GpuMemmoryBuffers provide zero-copy texture
updates when using impl-side painting on MacOSX.
    
BUG=321785,323338

Review URL: https://codereview.chromium.org/77023002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238841 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/content/renderer/render_thread_impl.h b/content/renderer/render_thread_impl.h
index 73981fc..5dffc8d 100644
--- a/content/renderer/render_thread_impl.h
+++ b/content/renderer/render_thread_impl.h
@@ -13,6 +13,7 @@
 #include "base/observer_list.h"
 #include "base/process/process_handle.h"
 #include "base/strings/string16.h"
+#include "base/threading/thread_checker.h"
 #include "base/timer/timer.h"
 #include "build/build_config.h"
 #include "content/child/child_thread.h"
@@ -506,6 +507,11 @@
 
   base::ProcessId renderer_process_id_;
 
+  // TODO(reveman): Allow AllocateGpuMemoryBuffer to be called from
+  // multiple threads. Current allocation mechanism for IOSurface
+  // backed GpuMemoryBuffers prevent this. crbug.com/325045
+  base::ThreadChecker allocate_gpu_memory_buffer_thread_checker_;
+
   DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl);
 };