summaryrefslogtreecommitdiffstats
path: root/chrome/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Gpu: Unregister channel name in the gpu process when a channel closes.thakis@chromium.org2010-11-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Gpu channel name is derived from the GPU pid and the renderer id. When a render view crashes and is reloaded, a channel with the same pid and renderer id will be created in the gpu process, which causes this check to fail: [36009:263:2890157912966265:FATAL:/Volumes/Data/thakis/chrome/src/ipc/ipc_channel_posix.cc(108)] Check failed: i == map_.end(). Creating second IPC server (fd 15) for '36009.r2' while first (fd 14) still exists Backtrace: 0 Chromium Framework 0x00cafe62 base::debug::StackTrace::StackTrace() + 32 1 Chromium Framework 0x00cc6b20 logging::LogMessage::~LogMessage() + 64 2 Chromium Framework 0x017f6834 IPC::(anonymous namespace)::PipeMap::Insert(std::string const&, int) + 644 3 Chromium Framework 0x017f6887 IPC::AddChannelSocket(std::string const&, int) + 25 4 Chromium Framework 0x00b3efcb GpuChannel::Init() + 103 5 Chromium Framework 0x00b470ff GpuThread::OnEstablishChannel(int) + 407 6 Chromium Framework 0x00b4778d void DispatchToMethod<GpuThread, void (GpuThread::*)(int), int>(GpuThread*, void (GpuThread::*)(int), Tuple1<int> const&) + 65 7 Chromium Framework 0x00b48c52 bool IPC::MessageWithTuple<Tuple1<int> >::Dispatch<GpuThread, void (GpuThread::*)(int)>(IPC::Message const*, GpuThread*, void (GpuThread::*)(int)) + 71 8 Chromium Framework 0x00b472f8 GpuThread::OnControlMessageReceived(IPC::Message const&) + 146 9 Chromium Framework 0x001696f6 ChildThread::OnMessageReceived(IPC::Message const&) + 452 10 Chromium Framework 0x017f9bcc IPC::ChannelProxy::Context::OnDispatchMessage(IPC::Message const&) + 144 11 Chromium Framework 0x017fab64 void DispatchToMethod<IPC::ChannelProxy::Context, void (IPC::ChannelProxy::Context::*)(IPC::Message const&), IPC::Message>(IPC::ChannelProxy::Context*, void (IPC::ChannelProxy::Context::*)(IPC::Message const&), Tuple1<IPC::Message> const&) + 63 12 Chromium Framework 0x017fab9f RunnableMethod<IPC::ChannelProxy::Context, void (IPC::ChannelProxy::Context::*)(IPC::Message const&), Tuple1<IPC::Message> >::Run() + 57 13 Chromium Framework 0x00ccdc39 MessageLoop::RunTask(Task*) + 303 14 Chromium Framework 0x00ccdcf1 MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) + 53 15 Chromium Framework 0x00ccdfcf MessageLoop::DoWork() + 253 16 Chromium Framework 0x00d42024 base::MessagePumpCFRunLoopBase::RunWork() + 74 17 Chromium Framework 0x00d42069 base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 23 18 CoreFoundation 0x96f260fb __CFRunLoopDoSources0 + 1563 19 CoreFoundation 0x96f23bbf __CFRunLoopRun + 1071 20 CoreFoundation 0x96f23094 CFRunLoopRunSpecific + 452 21 CoreFoundation 0x96f22ec1 CFRunLoopRunInMode + 97 22 HIToolbox 0x976c2f9c RunCurrentEventLoopInMode + 392 23 HIToolbox 0x976c2d51 ReceiveNextEventCommon + 354 24 HIToolbox 0x976c2bd6 BlockUntilNextEventMatchingListInMode + 81 25 AppKit 0x920b5a89 _DPSNextEvent + 847 26 AppKit 0x920b52ca -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156 27 AppKit 0x9207755b -[NSApplication run] + 821 28 Chromium Framework 0x00d41b66 base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 130 29 Chromium Framework 0x00d42155 base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 175 30 Chromium Framework 0x00cce7db MessageLoop::RunInternal() + 209 31 Chromium Framework 0x00cce7f5 MessageLoop::RunHandler() + 17 32 Chromium Framework 0x00cce859 MessageLoop::Run() + 35 33 Chromium Framework 0x00b466e6 GpuMain(MainFunctionParams const&) + 1123 34 Chromium Framework 0x00008d67 ChromeMain + 4921 35 Chromium Helper 0x00001f52 main + 24 36 Chromium Helper 0x00001f0e start + 54 37 ??? 0x00000003 0x0 + 3 The fix is to unregister the channel-name mapping when the GPU channel goes away. BUG=55641 TEST=Go to a gpu-accelerated page. Enter about:crash in omnibox. Reload page. No CHECK should be printed, and the page should reload fine. Review URL: http://codereview.chromium.org/4979005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66304 0039d316-1c4b-4281-b951-d872f2087c98
* Collect DirectX diagnostic information asynchronously.apatrick@chromium.org2010-11-155-6/+57
| | | | | | | | | | | | | Collecting this can take a couple of seconds. I put the code onto a worker thread. The about:gpuinfo handler polls for it until it is available, initially displaying only the subset of informtation that can be retreived quickly. This makes the startup time for accelerated compositing, WebGL, etc significantly lower on Windows. None of the other platforms have this issue. TEST=go to about:gpuinfo, try BUG=59711 Review URL: http://codereview.chromium.org/4860001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66184 0039d316-1c4b-4281-b951-d872f2087c98
* Enable GPU watchdog timer.apatrick@chromium.org2010-11-101-7/+0
| | | | | | | | | TEST=try BUG=none Review URL: http://codereview.chromium.org/4655003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65610 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed regression in order of initialization on Linux in r65461 causingkbr@chromium.org2010-11-091-4/+7
| | | | | | | | | | | GPU process to crash on startup. BUG=62581 TEST=none (ran CSS 3D and WebGL content) Review URL: http://codereview.chromium.org/4641003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65576 0039d316-1c4b-4281-b951-d872f2087c98
* - Relanding 61718.apatrick@chromium.org2010-11-095-44/+267
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I disabled the GPU watchdog in three new cases: - If the OSMesa software renderer is in use. This will disable it on bots. - When running on valgrind, whether on a bot or locally. - In debug builds I added a GPU process initialization time to the GPU info. I moved the GPU initialization code outside the watchdog protection because it can take a long time and trigger the watchdog. I increased the timeout. I set up a field trial with different timeouts to see the rate of failure for each period. Original CL description: I added a watchdog thread that intermitently checks the main thread can respond to tasks posted on its message queue. I fixed some bugs that prevented GGL from failing when the GPU channel was lost. Added a command line swith to disable the watchdog thread for debugging purposes. TEST=try, local testing of all features BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65461 0039d316-1c4b-4281-b951-d872f2087c98
* Made OSMesa work on Mac for WebGL.apatrick@chromium.org2010-11-081-25/+24
| | | | | | | | | | | | | | | This required that GPU initialization not fail if GPU info cannot be collected. The accelerated compositor still needs some work but this will let us run some WebGL browser and ui smoke tests. Also added --disable-accelerated-compositing for browser and ui tests so they will not attempt to use it. TEST=try, run ui test locally BUG=61037, 58343 Review URL: http://codereview.chromium.org/4716002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65447 0039d316-1c4b-4281-b951-d872f2087c98
* Deleted code associated with --enable-gpu-rendering andkbr@chromium.org2010-11-0815-1600/+1
| | | | | | | | | | | | | | | | | | | | --enable-video-layering flags. With the introduction of accelerated compositing to Chromium this code is now obsolete, and it is causing problems and bug reports when users experiment with these flags. Tested on Linux in the following configurations: - Compositor on, CSS 3D content - Compositor on, HTML5 video content - Compositor off, HTML5 video content Also ran patch successfully through the try bots. BUG=54932 TEST=none Review URL: http://codereview.chromium.org/4399003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65383 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: refactor copy-pasted codeevan@chromium.org2010-11-051-18/+4
| | | | | | | | | | I wanted to do the same thing in a third place. TEST=compiles Review URL: http://codereview.chromium.org/4508004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65263 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "gtk: refactor copy-pasted code"evan@chromium.org2010-11-051-2/+16
| | | | | | Build break. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65247 0039d316-1c4b-4281-b951-d872f2087c98
* gtk: refactor copy-pasted codeevan@chromium.org2010-11-051-16/+2
| | | | | | | | | | I wanted to do the same thing in a third place. TEST=compiles Review URL: http://codereview.chromium.org/4508004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65246 0039d316-1c4b-4281-b951-d872f2087c98
* Sanitize checkdeps-checked DEPS a bit.evan@chromium.org2010-11-041-0/+1
| | | | | | | | | - Move dependencies closer to where they're used. - Remove redundant comments. Review URL: http://codereview.chromium.org/4511001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65134 0039d316-1c4b-4281-b951-d872f2087c98
* Rename UploadToVideoFrame to ConvertToVideoFrame.tfarina@chromium.org2010-10-309-18/+18
| | | | | | | | | | | (Note: This was a TODO for hclam). BUG=None TEST=trybots Review URL: http://codereview.chromium.org/4113006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64526 0039d316-1c4b-4281-b951-d872f2087c98
* Let every "accelerated IO surface swapped" message have an identifier of the ↵thakis@chromium.org2010-10-281-4/+2
| | | | | | | | | | | | | | | surface. Currently, this is only used to DCHECK a currently implicit invariant, but I want to use this to let every surface container only remember its last painted-to surface, and not its last created surface. No behavior change. BUG=53165 TEST=none Review URL: http://codereview.chromium.org/4142004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64317 0039d316-1c4b-4281-b951-d872f2087c98
* Fix up SharedMemory implementation so that it is more equivalent on Windows ↵dmaclach@chromium.org2010-10-272-5/+2
| | | | | | | | | | | | | vs Posix and enforces exclusive creates. Clean up some naming to make it clearer what size you are getting by changing max_size to created_size. BUG=NONE TEST=BUILD Review URL: http://codereview.chromium.org/4034006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64097 0039d316-1c4b-4281-b951-d872f2087c98
* Upgraded Mesa to 7.9 from 7.7 in order to pick up bug fixes to thekbr@chromium.org2010-10-251-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | shader compiler which were causing WebGL test timeouts per https://bugs.webkit.org/show_bug.cgi?id=47243 . Version 7.8.2 was too buggy to use. This upgrade required the incorporation of the talloc library, which is only compiled in to the OSMesa shared object produced by third_party/mesa/mesa.gyp and not into the rest of Chromium. Upgraded mesa.gyp for the new source directories and files in Mesa 7.9. Applied the changes originally documented in third_party/mesa/README.chromium to the 7.9 sources. Made other necessary changes to Mesa and talloc to be able to build and run them on Windows and Mac OS X. Created chromium.patch files for both Mesa and talloc. Fixed chrome/gpu/gpu_main.cc to honor the --use-gl command line option on Linux. Tested on Linux in Chromium with CSS 3D content and --use-gl=osmesa as well as in DumpRenderTree and verified that the affected WebGL tests no longer hang. Tested on Windows in Chromium with WebGL content and --use-gl=osmesa. Tested on Mac OS X in test_shell with WebGL content. This job was explicitly not sent to the try bots because it would probably kill them. The files in this CL are a small subset of the files being committed. The patch is too large to upload to Rietveld. BUG=none TEST=none Review URL: http://codereview.chromium.org/4107001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63795 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: More dtor deinlining. (Can almost see the end!)erg@google.com2010-10-225-13/+22
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3962004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63527 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 63388 - ↵stoyan@chromium.org2010-10-215-270/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://build.chromium.org/buildbot/waterfall/builders/Mac10.6%20Tests%20(dbg)(2)/builds/10949 - Relanding 61718. I disabled the GPU watchdog in three new cases: - If the OSMesa software renderer is in use. This will disable it on bots. - When running on valgrind, whether on a bot or locally. - In debug builds I added a GPU process initialization time to the GPU info. I moved the GPU initialization code outside the watchdog protection because it can take a long time and trigger the watchdog. I increased the timeout. I set up a field trial with different timeouts to see the rate of failure for each period. I made ui_tests always run with OSMesa, for consistent operation on bots and when run locally. Original CL description: I added a watchdog thread that intermitently checks the main thread can respond to tasks posted on its message queue. I fixed some bugs that preventede GGL from failing when the GPU channel was lost. Added a command line swith to disable the watchdog thread for debugging purposes. TEST=try, local testing of all features BUG=none Review URL: http://codereview.chromium.org/3794011 TBR=apatrick@chromium.org Review URL: http://codereview.chromium.org/3979004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63396 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding 61718.apatrick@chromium.org2010-10-215-44/+270
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I disabled the GPU watchdog in three new cases: - If the OSMesa software renderer is in use. This will disable it on bots. - When running on valgrind, whether on a bot or locally. - In debug builds I added a GPU process initialization time to the GPU info. I moved the GPU initialization code outside the watchdog protection because it can take a long time and trigger the watchdog. I increased the timeout. I set up a field trial with different timeouts to see the rate of failure for each period. I made ui_tests always run with OSMesa, for consistent operation on bots and when run locally. Original CL description: I added a watchdog thread that intermitently checks the main thread can respond to tasks posted on its message queue. I fixed some bugs that preventede GGL from failing when the GPU channel was lost. Added a command line swith to disable the watchdog thread for debugging purposes. TEST=try, local testing of all features BUG=none Review URL: http://codereview.chromium.org/3794011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63388 0039d316-1c4b-4281-b951-d872f2087c98
* Changes WebGL to rely on the command buffergman@chromium.org2010-10-201-0/+1
| | | | | | | | | | | | | | for more validation. This change also means that the shader compiler is put into WebGL mode for WebGL. TEST=ran webgl conformance tests. BUG=none Review URL: http://codereview.chromium.org/3890004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63267 0039d316-1c4b-4281-b951-d872f2087c98
* Convert LOG(INFO) to VLOG(1) - chrome/gpu/.pkasting@chromium.org2010-10-201-5/+5
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3923003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63254 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 63232 - On Windows, create a new TransportDIB::Handle struct which ↵kkania@chromium.org2010-10-206-10/+26
| | | | | | | | | | | | | | | | | | | | | | | | | includes the file mapping HANDLE and the source process ID. Duplicating the handle for the remote process is done in TransportDIB::Map, instead of in various #ifdefs scattered across the code. Also on windows, remove the struct for the TransportDIB::Id which contained both the sequence number and the HANDLE and replace it with just the sequence number. Fix ThumbnailGenerator by mapping the TransportDIB on Windows and adding a method to duplicate the file mapping handle before sending across the channel. Also, add a ScopedHandle and fix some handle leaks. BUG=none TEST=none Review URL: http://codereview.chromium.org/3834003 TBR=kkania@chromium.org Review URL: http://codereview.chromium.org/3943002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63246 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the mesa gl issue in chrome.zmo@google.com2010-10-201-1/+5
| | | | | | | | BUG=58343 TEST=none Review URL: http://codereview.chromium.org/3860004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63236 0039d316-1c4b-4281-b951-d872f2087c98
* On Windows, create a new TransportDIB::Handle struct which includes the filekkania@chromium.org2010-10-206-26/+10
| | | | | | | | | | | | | | | | | | | | mapping HANDLE and the source process ID. Duplicating the handle for the remote process is done in TransportDIB::Map, instead of in various #ifdefs scattered across the code. Also on windows, remove the struct for the TransportDIB::Id which contained both the sequence number and the HANDLE and replace it with just the sequence number. Fix ThumbnailGenerator by mapping the TransportDIB on Windows and adding a method to duplicate the file mapping handle before sending across the channel. Also, add a ScopedHandle and fix some handle leaks. BUG=none TEST=none Review URL: http://codereview.chromium.org/3834003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63232 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Delay loading Media Foundations DLLs"hclam@chromium.org2010-10-191-2/+4
| | | | | | | | | | | | This reverts commit a6294c5672df70fbd5191f25487119f0fa6a3ffe. TBR=eroman BUG=None TEST=None Review URL: http://codereview.chromium.org/3913002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63120 0039d316-1c4b-4281-b951-d872f2087c98
* Delay loading Media Foundations DLLshclam@chromium.org2010-10-191-4/+2
| | | | | | | | | | | Checked with Al we are already delay loading d3d9.dll, so add some extra for MF. BUG=53714 TEST=None Review URL: http://codereview.chromium.org/3859005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63112 0039d316-1c4b-4281-b951-d872f2087c98
* Add Ability to pass in allowed extensions to GPU contexts.gman@chromium.org2010-10-195-30/+39
| | | | | | | | | | | | | | | | | | | | Questions: 1) Is WebGraphicsContext3D only used for WebGL? Currently this patch makes that assumption. 2) I started by adding const char* allowed_extensions to a bunch of functions. Then, at the IPC level added GPUInitParams. Should I use GPUInitParams everywhere? 3) Is the path for gpu_init_params.h ok? TEST=unit tests, manually tested WebGL BUG=none Review URL: http://codereview.chromium.org/3775014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63026 0039d316-1c4b-4281-b951-d872f2087c98
* Does not seem to be logging the gpu stats for any but the browser process. ↵rlp@chromium.org2010-10-121-0/+2
| | | | | | | | | | | This line should actually set it for the gpu process. BUG=58836 TEST=need to see the crash reports that come back Review URL: http://codereview.chromium.org/3653004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62260 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: call SetProcTitle() in GpuMain() to make the process name correct.mdm@chromium.org2010-10-111-1/+7
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3645003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62203 0039d316-1c4b-4281-b951-d872f2087c98
* In about:gpu, list only 2 levels of the tree.apatrick@chromium.org2010-10-111-19/+22
| | | | | | | | | | | | | This is where the interesting is. The rest is something about video deinterlacing. It also speeds it up a bit. Also formatted vendor and device IDs as hex since that is how they are usually presented. TEST=try BUG=none Review URL: http://codereview.chromium.org/3652001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62176 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding 61904 with missing file this time.apatrick@chromium.org2010-10-083-0/+143
| | | | | | | | | | | | | | | | Original description: Added DirectX Diagnostics information to about:gpu on Windows. This includes the name of the GPU hardware and the driver version and release date and some other information that might potentially also be valuable in the GPU stats. TEST=try BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61980 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the usage of MFT related objects so they don't get linked.hclam@chromium.org2010-10-081-2/+4
| | | | | | | | | | | | | Linking against MFT seems to create a runtime problem for XP. TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3548021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61929 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit - move MFT h264 code to media/video and connect to gpu video decoder.hclam@chromium.org2010-10-083-4/+118
| | | | | | | | | | | TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3591020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61925 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Move MFT H264 video decoder implementation and connect it to ↵hclam@chromium.org2010-10-083-118/+4
| | | | | | | | | | | | | | | | | | | GpuVideoDecoder" This reverts commit 8462483619e253dca3717d51e340ed839a6cab1d. Revert "Fix build failure." This reverts commit 8dcd363637ac2e59f9472c0793a0b1fd3c2ad4c7. TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3601019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61922 0039d316-1c4b-4281-b951-d872f2087c98
* Fix build failure.hclam@chromium.org2010-10-081-2/+7
| | | | | | | | | | | TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3516024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61921 0039d316-1c4b-4281-b951-d872f2087c98
* Move MFT H264 video decoder implementation and connect it to GpuVideoDecoderhclam@chromium.org2010-10-083-4/+113
| | | | | | | | | | | | | | | | | | | | Remove media/mf folder and move the video decode engine to media/video. There are some temporary changes in MftH264DecodeEngine to work with GpuVideoDecoder correctly. Removed tests will be added later. Example program will likely be removed permanently due to maintence problem. This patch depends WebKit and ANGLE changes to be able to present video frames onto screen and still have lot of bugs, those problems will be address later. BUG=53714 TEST=Tree is green. This patch doesn't work yet. Review URL: http://codereview.chromium.org/3432030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61918 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Added DirectX Diagnostics information to about:gpu on Windows."ajwong@chromium.org2010-10-082-138/+0
| | | | | | | | This reverts r61904. TBR=apatrick git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61905 0039d316-1c4b-4281-b951-d872f2087c98
* Added DirectX Diagnostics information to about:gpu on Windows.apatrick@chromium.org2010-10-082-0/+138
| | | | | | | | | | | This includes the name of the GPU hardware and the driver version and release date and some other information that might potentially also be valuable in the GPU stats. TEST=try BUG=none Review URL: http://codereview.chromium.org/3547020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61904 0039d316-1c4b-4281-b951-d872f2087c98
* GpuVideoDecoderHost runs on IO thread instead of Render threadhclam@chromium.org2010-10-072-19/+0
| | | | | | | | | | | | Move GpuVideoDecoderHost to IO thread and change GpuVideoServiceHost to be a MessageFilter. BUG=53714 TEST=Tree is green. Will pending on WebKit changes to make this work. Review URL: http://codereview.chromium.org/3462015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61854 0039d316-1c4b-4281-b951-d872f2087c98
* Make FakeGlVideoDecodeEngine works in the hardware video decoding architecturehclam@chromium.org2010-10-074-15/+54
| | | | | | | | | | | | | | Add Preroll IPC message for finishing the initialiation of FakeGlVideoDecodeEngine. Also defined methods in WebVideoFrameImpl to access video frame textures. This change depend on a WebKit change to succesfully display the textures. BUG=53714 TEST=Tree is green. This still needs WebKit changes to work. Review URL: http://codereview.chromium.org/3472016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61853 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup in VideoFramehclam@chromium.org2010-10-072-4/+0
| | | | | | | | | | | | | Remove D3D textures from VideoFrame because it is not used anymore. Remove duration and timestamp when creating a video frame from textures. BUG=53714 TEST=Tree is green. Review URL: http://codereview.chromium.org/3501005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61852 0039d316-1c4b-4281-b951-d872f2087c98
* Implement GpuVideoDecoderHost and unit testshclam@chromium.org2010-10-077-52/+52
| | | | | | | | | | | | | | Add the following feature to GpuVideoDecoderHost: 1. Video frame allocation / release. 2. ProduceVideoFrame / ConsumeVideoFrame using frames allocated. 3. Change GpuVideoDecoder creation to asynchronous. BUG=53714 TEST=unit_tests --gtest_filter=GpuVideoDecoder* Review URL: http://codereview.chromium.org/3397027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61824 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 61718 - GPU process terminates on hang.mnissler@chromium.org2010-10-073-154/+0
| | | | | | | | | | | | | | | | | | I added a watchdog thread that intermitently checks the main thread can respond to tasks posted on its message queue. I fixed some bugs that preventede GGL from failing when the GPU channel was lost. Added a command line swith to disable the watchdog thread for debugging purposes. TEST=try, check WebGL works, check about:gpuhang terminates process. BUG=38739,53871 Review URL: http://codereview.chromium.org/3528012 TBR=apatrick@chromium.org Review URL: http://codereview.chromium.org/3616011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61782 0039d316-1c4b-4281-b951-d872f2087c98
* GPU process terminates on hang.apatrick@chromium.org2010-10-063-0/+154
| | | | | | | | | | | | | | | I added a watchdog thread that intermitently checks the main thread can respond to tasks posted on its message queue. I fixed some bugs that preventede GGL from failing when the GPU channel was lost. Added a command line swith to disable the watchdog thread for debugging purposes. TEST=try, check WebGL works, check about:gpuhang terminates process. BUG=38739,53871 Review URL: http://codereview.chromium.org/3528012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61718 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 61608 - On Windows, create a new TransportDIB::Handle struct which ↵satish@chromium.org2010-10-066-9/+26
| | | | | | | | | | | | | | | | | | | | | | | includes the file mapping HANDLE and the source process ID. Duplicating the handle for the remote process is done in TransportDIB::Map, instead of in various #ifdefs scattered across the code. Also on windows, remove the struct for the TransportDIB::Id which contained both the sequence number and the HANDLE and replace it with just the sequence number. Fix ThumbnailGenerator by mapping the TransportDIB on Windows and adding a method to duplicate the file mapping handle before sending across the channel. BUG=none TEST=none Review URL: http://codereview.chromium.org/3305020 BUG=58128 TBR=kkania@chromium.org Review URL: http://codereview.chromium.org/3596008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61624 0039d316-1c4b-4281-b951-d872f2087c98
* On Windows, create a new TransportDIB::Handle struct which includes the filekkania@chromium.org2010-10-066-26/+9
| | | | | | | | | | | | | | | | | mapping HANDLE and the source process ID. Duplicating the handle for the remote process is done in TransportDIB::Map, instead of in various #ifdefs scattered across the code. Also on windows, remove the struct for the TransportDIB::Id which contained both the sequence number and the HANDLE and replace it with just the sequence number. Fix ThumbnailGenerator by mapping the TransportDIB on Windows and adding a method to duplicate the file mapping handle before sending across the channel. BUG=none TEST=none Review URL: http://codereview.chromium.org/3305020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61608 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Initialize data members in constructor.jhawkins@chromium.org2010-10-051-1/+2
| | | | | | | | | | | | CID=12798, 12835, 12921, 12922, 12923, 13083, 1408, 7026, 7027, 13052, 13058, 8295, 2289, 13026, 13133, 13233, 13184, 13183 BUG=none TEST=none Patch by Kausalya Madhusudhanan <kmadhusu@chromium.org> Review URL: http://codereview.chromium.org/3567011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61448 0039d316-1c4b-4281-b951-d872f2087c98
* Add offscreen context creation attributes to GGL.enne@chromium.org2010-10-014-5/+19
| | | | | | | | | | | View contexts and more extensive color format picking not handled yet. BUG=39849 TEST=WebGL conformance tests (context*.html) Review URL: http://codereview.chromium.org/3302019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61220 0039d316-1c4b-4281-b951-d872f2087c98
* shared_memory: remove wstrings, fix callers.evan@chromium.org2010-09-291-1/+1
| | | | | | | | | BUG=23581 TEST=compiles Review URL: http://codereview.chromium.org/3555002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60985 0039d316-1c4b-4281-b951-d872f2087c98
* Implement video frame exchange in GpuVideoDecoder and testshclam@chromium.org2010-09-294-61/+349
| | | | | | | | | | | | Implement ProduceVideoFrame() in GpuVideoDecoder and unit tests for testing the loginc in GpuVideoDecoder. BUG=53714 TEST=unit_tests --gtest_filter=GpuVideoDecoder* Review URL: http://codereview.chromium.org/3414003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60902 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 60421 - Revert 60373, trying to track down a perf regression (see bug ↵thakis@chromium.org2010-09-242-0/+8
| | | | | | | | | | | | | | | | | 56752)- Add about:gpuhang BUG=None TEST=None Review URL: http://codereview.chromium.org/3447023 TBR=thakis@chromium.org Review URL: http://codereview.chromium.org/3398027 TBR=thakis@chromium.org Review URL: http://codereview.chromium.org/3398028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60430 0039d316-1c4b-4281-b951-d872f2087c98