summaryrefslogtreecommitdiffstats
path: root/chrome/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Move chrome\gpu to content\gpu.jam@chromium.org2011-03-1237-4643/+0
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/6684015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77903 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 77899 - Connect up --disable-gl-multisampling to command bufferkinuko@chromium.org2011-03-124-22/+11
| | | | | | | | | | | | | | | Plumb the --disable-gl-multisampling flag in to the command buffer, so it won't report the extension to any consumers. BUG=75181 TEST=webgl antialias test TBR=jbauman Review URL: http://codereview.chromium.org/6623063 TBR=jbauman@chromium.org Review URL: http://codereview.chromium.org/6685022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77901 0039d316-1c4b-4281-b951-d872f2087c98
* Connect up --disable-gl-multisampling to command bufferjbauman@chromium.org2011-03-124-11/+22
| | | | | | | | | | | Plumb the --disable-gl-multisampling flag in to the command buffer, so it won't report the extension to any consumers. BUG=75181 TEST=webgl antialias test Review URL: http://codereview.chromium.org/6623063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77899 0039d316-1c4b-4281-b951-d872f2087c98
* Remove FFmpegVideoDecodeEngine's dependency on AVStream (again).scherkus@chromium.org2011-03-113-13/+15
| | | | | | | | | | | First step of many towards removing DemuxerStream::QueryInterface, AVStreamProvider, and MediaFormat. This time without memory leaks! BUG=28206 TEST=media_unittests git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77875 0039d316-1c4b-4281-b951-d872f2087c98
* Move some chrome\common code to content in preparation for moving chrome\gpu.jam@chromium.org2011-03-112-4/+4
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/6686002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77868 0039d316-1c4b-4281-b951-d872f2087c98
* Move Linux sub process breakpad initialization to a common place.jam@chromium.org2011-03-113-15/+3
| | | | | | Review URL: http://codereview.chromium.org/6667024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77834 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 77476 - Remove FFmpegVideoDecodeEngine's dependency on AVStream.tyoshino@chromium.org2011-03-113-15/+13
| | | | | | | | | | | | | | | | | This change seems to have caused Linux Heapcheck bot redness. http://build.chromium.org/p/chromium.memory/builders/Linux%20Heapcheck/builds/4846 First step of many towards removing DemuxerStream::QueryInterface, AVStreamProvider, and MediaFormat. BUG=28206 TEST=media_unittests Review URL: http://codereview.chromium.org/6624062 TBR=scherkus@chromium.org Review URL: http://codereview.chromium.org/6665020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77770 0039d316-1c4b-4281-b951-d872f2087c98
* Context recovery changes:amarinichev@chromium.org2011-03-101-2/+4
| | | | | | | | | | | | | * changed acquired_surfaces_ from map<> to multimap<> to help with creating a new on-screen context while another one is still in flight; * removed a side-effect in Context::IsCommandBufferContextLost. It shouldn't have been affecting channel state to begin with; * check if a route is still alive before deleting it in GpuChannel::OnDestroyCommandBuffer, this will be needed for evicting old contexts. BUG=none TEST=manually delete a route in GpuChannel::OnMessageReceived; manually inject an error in GPUProcessor::ProcessCommands and verify the context gets restored. Review URL: http://codereview.chromium.org/6625068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77728 0039d316-1c4b-4281-b951-d872f2087c98
* Move GPU messages to content. I've also switched the IPC structs to use the ↵jam@chromium.org2011-03-1012-17/+23
| | | | | | | | new IPC macros that generate serialization code. Review URL: http://codereview.chromium.org/6673003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77721 0039d316-1c4b-4281-b951-d872f2087c98
* Add a ContentClient interface than an embedder of content has to implement. ↵jam@chromium.org2011-03-101-2/+3
| | | | | | | | This allows us to move Chrome specific code out of content. Review URL: http://codereview.chromium.org/6660011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77572 0039d316-1c4b-4281-b951-d872f2087c98
* If a field in GPUInfo is not collected, we should not clear it because it ↵zmo@google.com2011-03-093-6/+0
| | | | | | | | | | | | might contain values from a previous info collection. The logic was lost in a recent GPUInfo code refactoring from r77300. BUG=none TEST=none TBR=jam Review URL: http://codereview.chromium.org/6659012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77544 0039d316-1c4b-4281-b951-d872f2087c98
* Remove FFmpegVideoDecodeEngine's dependency on AVStream.scherkus@chromium.org2011-03-093-13/+15
| | | | | | | | | | | First step of many towards removing DemuxerStream::QueryInterface, AVStreamProvider, and MediaFormat. BUG=28206 TEST=media_unittests Review URL: http://codereview.chromium.org/6624062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77476 0039d316-1c4b-4281-b951-d872f2087c98
* GPU process does not rely on GTK.backer@chromium.org2011-03-091-15/+11
| | | | | | | | | | | AFAIK, the GPU process does not rely on GTK. This patch eliminates the initialization of GTK. BUG=none TEST=try bots and by hand on Linux with 3D CSS and WebGL content Review URL: http://codereview.chromium.org/6596074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77460 0039d316-1c4b-4281-b951-d872f2087c98
* Fix wstrings in content/common.avi@chromium.org2011-03-081-1/+1
| | | | | | | | | BUG=23581 TEST=none Review URL: http://codereview.chromium.org/6635046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77327 0039d316-1c4b-4281-b951-d872f2087c98
* Make GPUInfo a struct, which it should be according to the C++ guidelines. ↵jam@chromium.org2011-03-087-72/+87
| | | | | | | | This makes it easy to write automated serilization code for it. Review URL: http://codereview.chromium.org/6621057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77300 0039d316-1c4b-4281-b951-d872f2087c98
* Move ChildThread and ChildProcess to content. Also move remaining code that ↵jam@chromium.org2011-03-086-6/+6
| | | | | | | | they depend on and which depends on them.TBR=avi Review URL: http://codereview.chromium.org/6628071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77249 0039d316-1c4b-4281-b951-d872f2087c98
* Move preliminary gpu info collection and software rendering flags ↵zmo@google.com2011-03-041-15/+0
| | | | | | | | | | | computation to browser startup time. This allows us to handle each feature independently through appending renderer process commandline switches (in most cases but not all, because this preliminary run only collects partial gpu info). BUG=none TEST=unittest Review URL: http://codereview.chromium.org/6588138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76971 0039d316-1c4b-4281-b951-d872f2087c98
* Move MessageRouter from chrome to content.jam@chromium.org2011-03-031-3/+1
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/6603027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76827 0039d316-1c4b-4281-b951-d872f2087c98
* Sandbox the GPU process for Windowscpu@chromium.org2011-03-034-2/+43
| | | | | | | | | | | | | | | | The policy is fairly restrictive token-wise but still the process needs access to the interactive desktop. Tweaks to the Job level in a different CL once it has baked in the dev channel. BUG=48607 TEST=see bug. Review URL: http://codereview.chromium.org/6594100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76675 0039d316-1c4b-4281-b951-d872f2087c98
* Add older ATI/NVidia/Intel drivers in XP to software rendering list, and ↵zmo@google.com2011-03-022-5/+6
| | | | | | | | remove the original no-XP entry.BUG=74212TEST=none Review URL: http://codereview.chromium.org/6594098 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76625 0039d316-1c4b-4281-b951-d872f2087c98
* Don't scan PCI bus for video card vendor id and device id if PCI bus doesn't ↵zmo@google.com2011-03-011-0/+15
| | | | | | | | | | | exist. BUG=none TEST=none Review URL: http://codereview.chromium.org/6602045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76424 0039d316-1c4b-4281-b951-d872f2087c98
* Be more flexible about PCI lib path: try both libpci.so.3 and libpci.so. So ↵zmo@google.com2011-03-011-2/+6
| | | | | | | | | | | far mostly we see if libpci.so.3, but today we received someone reporting libpci.so. BUG=58215 TEST=none Review URL: http://codereview.chromium.org/6592057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76384 0039d316-1c4b-4281-b951-d872f2087c98
* Collect D3D Driver Info (version and date) from Windows system registry.zmo@google.com2011-03-017-54/+127
| | | | | | | | | BUG=72977 TEST=about:gpu page display driver version and date in Windows. Review URL: http://codereview.chromium.org/6588027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76381 0039d316-1c4b-4281-b951-d872f2087c98
* Moved creation of GPU command buffer shared memory into the browser process.apatrick@chromium.org2011-02-282-42/+52
| | | | | | | | | | | This is to allow the GPU process to be sandboxed on all platforms. TEST=try, run WebGL app on win and mac. BUG=none Review URL: http://codereview.chromium.org/6588029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76307 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid deleting GPU transfer buffers twice on POSIX.apatrick@chromium.org2011-02-261-0/+5
| | | | | | | | | TEST=trybots, run WebGL on windows and mac locally. BUG=none Review URL: http://codereview.chromium.org/6591015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76137 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed GpuWatchdogThread::OnExit to make it clear it is crashing deliberately.apatrick@chromium.org2011-02-252-5/+7
| | | | | | | | | | | It crashes rather than exiting normally so that the hang is reported as a crash and it is possible to see what the presumed hung thread was doing in order to diagnose whether or not there is a bug. TEST=try BUG=73871 Review URL: http://codereview.chromium.org/6576044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76106 0039d316-1c4b-4281-b951-d872f2087c98
* Moved creation of GPU transfer buffers into the browser process.apatrick@chromium.org2011-02-245-22/+67
| | | | | | | | | | | | | Transfer buffer creation was previously done in the GPU process. This is one step required to sandbox the GPU process. Rather than the GPU process opening a renderer process's handle by PID, which can't been done when sandboxed on Windows, the browser process passes the handle to the GPU process via the renderer process. TEST=try BUG=none Review URL: http://codereview.chromium.org/6557006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75980 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed about:gpu refresh bug.nduca@chromium.org2011-02-242-6/+25
| | | | | | | | | | BUG=72591 TEST= Review URL: http://codereview.chromium.org/6480099 Patch from John Bates <jbates@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75945 0039d316-1c4b-4281-b951-d872f2087c98
* Disable the resize IPC for accelerated compositing on TOUCH_UI.backer@chromium.org2011-02-241-1/+1
| | | | | | | | | | | The rendering path for TOUCH_UI is a work in progress, but it will roughly resemble the MAC OS X path. In particular, we will not need the browser to synchronously resize the window that the GPU process is drawing into. This patch makes accelerated rendering closer to usable on TOUCH_UI (the chrome is distorted). BUG=none (accelerated compositing for TOUCH_UI is still NOT_IMPLEMENTED) TEST=by hand on Linux (w/ and w/o TOOLKIT_VIEWS and TOUCH_UI), Windows, and Mac Review URL: http://codereview.chromium.org/6567005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75884 0039d316-1c4b-4281-b951-d872f2087c98
* Following example of BrowserRenderProcessHost::OnMessageReceived, respond to ↵amarinichev@chromium.org2011-02-241-3/+11
| | | | | | | | | | | sync messages even if router failed to route. BUG=none TEST=remove a route in a debugger and see what happens Review URL: http://codereview.chromium.org/6574008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75828 0039d316-1c4b-4281-b951-d872f2087c98
* Collect as much GPU information as possible without creating a GL/D3D ↵zmo@google.com2011-02-195-3/+59
| | | | | | | | | | | context. If based on such partial information, a graphics card/driver is already blacklisted, we shouldn't even try to establish GPU channel. This gives us the ability to blacklist REALLY BAD graphics card/driver that will crash during GPU info collection. BUG=72979 TEST=none Review URL: http://codereview.chromium.org/6531023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75473 0039d316-1c4b-4281-b951-d872f2087c98
* Don't compile in experimental GPU video decoding IPC handling for now.cevans@chromium.org2011-02-161-1/+3
| | | | | | | | | BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6473016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75108 0039d316-1c4b-4281-b951-d872f2087c98
* Implement webkit media metrics in chromium.scherkus@chromium.org2011-02-165-6/+17
| | | | | | | | | | | | | | | This implements the chromium side of the webkit media statistics feature. A followup cl (in webkit) will wire the two sides together. Patch by sjl@chromium.org: http://codereview.chromium.org/6246091/ BUG=71255 TEST=media_unittests git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75050 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 74700 - Revert the "out-of-lining of test code" change within src/mediansylvain@chromium.org2011-02-121-1/+1
| | | | | | | | | | | | | to see if it fixes the gmock crashes we've been seeing since the change has been made. The original change was split between r74660, r74168, r74059 Review URL: http://codereview.chromium.org/6473006 TBR=nsylvain@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74712 0039d316-1c4b-4281-b951-d872f2087c98
* Revert the "out-of-lining of test code" change within src/mediansylvain@chromium.org2011-02-111-1/+1
| | | | | | | | | | | to see if it fixes the gmock crashes we've been seeing since the change has been made. The original change was split between r74660, r74168, r74059 Review URL: http://codereview.chromium.org/6473006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74700 0039d316-1c4b-4281-b951-d872f2087c98
* Disarm and reset GPU watchdog if it sleeps for an extended period of time.apatrick@chromium.org2011-02-113-8/+25
| | | | | | | | | TEST=simulate sleeping watchdog thread, try BUG=72697 Review URL: http://codereview.chromium.org/6503007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74689 0039d316-1c4b-4281-b951-d872f2087c98
* Another big out-of-lining of test code. Hits a lot of gmock objectserg@google.com2011-02-083-2/+12
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6413036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74168 0039d316-1c4b-4281-b951-d872f2087c98
* Change includes of gfx/* to ui/gfx/*sail@chromium.org2011-02-054-6/+6
| | | | | | | | | BUG=71063 TEST=compiled Review URL: http://codereview.chromium.org/6312156 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73890 0039d316-1c4b-4281-b951-d872f2087c98
* Small fixes for GPU process in single process mode.backer@chromium.org2011-01-312-4/+7
| | | | | | | | | | | | | ChildThread::current() doesn't necessarily refer to the GpuThread in single-process mode. Disabled about:gpu logging for single process mode. BUG=none TEST=by hand Review URL: http://codereview.chromium.org/6312031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73183 0039d316-1c4b-4281-b951-d872f2087c98
* Route LOG messages generated on the GPU process to the about:gpu page.nduca@chromium.org2011-01-272-2/+26
| | | | | | | | | BUG=57069 TEST= Review URL: http://codereview.chromium.org/6262017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72881 0039d316-1c4b-4281-b951-d872f2087c98
* Route IPC through browser when creating a viewable command buffer.backer@chromium.org2011-01-275-70/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The communications path for creating a viewable command buffer used to be directly from the renderer (gpu_channel.cc) to the gpu process (gpu_channel.cc). This patch makes the browser an intermediary: - renderer (gpu_channel.cc) makes a synchronous request to the browser (picked up in renderer_message_filter.cc and forwarded to gpu_process_host.cc) - browser (gpu_process_host.cc) makes an asynchronous request to the gpu process (picked up in gpu_thread.cc and forwarded to gpu_channel.cc) for the command buffer - gpu process (gpu_thread.cc) sends an ACK with the route_id for the command buffer back to the browser (gpu_process_host.cc) - browser (gpu_process_host.cc) sends a delayed reply back to the renderer (gpu_channel_host.cc), which had blocked There are several motivations for this patch: - creating an onscreen command buffer requires a window to draw into (which is acquired/locked in the browser); by routing through the browser, we can acquire the get the window beforehand (thereby preventing a deadlock in some other work that I'm doing) - we can eliminate several separate synchronous IPC messages for obtaining and releasing the window associated with drawing (I've tried to unify the different code paths for Linux, Windows, and Mac) - in the future, we can have the browser allocate SHM for the command buffer and transfer buffers, allowing us to sandbox the gpu process BUG=none TEST=by hand on all 3 platforms, trybots Review URL: http://codereview.chromium.org/6343006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72798 0039d316-1c4b-4281-b951-d872f2087c98
* Reland 72704 - Defered collect DirectX diagnostics until they are needed for ↵apatrick@chromium.org2011-01-275-19/+26
| | | | | | | | | | | | | | | | | | | about:gpu. This is because collecting the stats often crashes. Added a guard to prevent the collection of diagnostics on multiple threads simultaneously. Renamed GPUInfo::Progress to GPUInfo::Level. TEST=try, about:gpu does not cause concurrent diagnostics collection BUG=none Review URL: http://codereview.chromium.org/6364013 Review URL: http://codereview.chromium.org/6341011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72731 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 72704 - Defered collect DirectX diagnostics until they are needed for ↵apatrick@chromium.org2011-01-264-25/+18
| | | | | | | | | | | | | | | | | | | | about:gpu. This is because collecting the stats often crashes. Added a guard to prevent the collection of diagnostics on multiple threads simultaneously. Renamed GPUInfo::Progress to GPUInfo::Level. TEST=try, about:gpu does not cause concurrent diagnostics collection BUG=none Review URL: http://codereview.chromium.org/6364013 TBR=apatrick@chromium.org Review URL: http://codereview.chromium.org/6370013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72707 0039d316-1c4b-4281-b951-d872f2087c98
* Defered collect DirectX diagnostics until they are needed for about:gpu.apatrick@chromium.org2011-01-264-18/+25
| | | | | | | | | | | | | | | This is because collecting the stats often crashes. Added a guard to prevent the collection of diagnostics on multiple threads simultaneously. Renamed GPUInfo::Progress to GPUInfo::Level. TEST=try, about:gpu does not cause concurrent diagnostics collection BUG=none Review URL: http://codereview.chromium.org/6364013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72704 0039d316-1c4b-4281-b951-d872f2087c98
* Make Pepper resize the buffer through the command buffer.piman@google.com2011-01-261-19/+18
| | | | | | | | | | | This adds support for glResizeCHROMIUM for off-screen contexts. BUG=none TEST=Pepper flash. Review URL: http://codereview.chromium.org/6241015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72575 0039d316-1c4b-4281-b951-d872f2087c98
* Collect GL_EXTENSIONS string in GPUInfo and display it in about:gpu page.zmo@google.com2011-01-252-2/+20
| | | | | | | | (A second try after being reverted.) Review URL: http://codereview.chromium.org/6279009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72445 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 72180 - Collect GL_EXTENSIONS string in GPUInfo and display it in ↵asargent@chromium.org2011-01-212-18/+2
| | | | | | | | | | | | | | about:gpu page. BUG=none TEST=GL_EXTENSIONS showing in about:gpu Review URL: http://codereview.chromium.org/6306008 TBR=zmo@google.com Review URL: http://codereview.chromium.org/6324008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72182 0039d316-1c4b-4281-b951-d872f2087c98
* Collect GL_EXTENSIONS string in GPUInfo and display it in about:gpu page.zmo@google.com2011-01-212-2/+18
| | | | | | | | | BUG=none TEST=GL_EXTENSIONS showing in about:gpu Review URL: http://codereview.chromium.org/6306008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72180 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete base/lock.h and fix up callers to use the new header file andbrettw@chromium.org2011-01-211-1/+0
| | | | | | | | | | | the base namespace. Fix several files including lock.h unnecessarily. BUG=none TEST=none Original review=http://codereview.chromium.org/6142009/ Patch by leviw@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72106 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor and improve gpu_info_collector: collect information on linux;zmo@google.com2011-01-217-247/+440
| | | | | | | | | | | | | collect extra information (driver_vendor, gl_renderer, etc.) on Mac/linux. Note that this CL takes some code from rlp's long outstandingCL (with her permission). BUG=49579 TEST=unittest Review URL: http://codereview.chromium.org/6346007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72055 0039d316-1c4b-4281-b951-d872f2087c98