Comment #9 on issue 19276 by hc...@chromium.org: Browser hangs very frequently during video hardware configuration testing http://code.google.com/p/chromium/issues/detail?id=19276
Since testers use remote desktop extensively for testing <video>, this becomes a bigger problem and may impose potential deadlock for other sound driver too. Also report my findings about hacking waveout_output_win.cc, from the stack trace it looks like the lock happens in waveOutWrite() in Start() and WaveCallback(). It looks like to me the fact that we are calling waveOutWrite in two threads is causing the deadlock. I tried to wrap the loop of Start() that calls waveOutWrite() with a pair of waveOutPause() and waveOutRestart() I don't get the deadlock anymore, e.g.: Start() { ... ::waveOutPause(waveout_); for (int ix = 0; ix != kNumBuffers; ++ix) { ::waveOutWrite(waveout_, ...); } ::waveOutRestart(waveout_); } If calling waveOutPause() does inhibit winmm from calling us from another thread, this maybe a solution to solve the deadlock. Any thoughts? -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings --~--~---------~--~----~------------~-------~--~----~ Automated mail from issue updates at http://crbug.com/ Subscription options: http://groups.google.com/group/chromium-bugs -~----------~----~----~----~------~----~------~--~---