Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Issue 5301007: Fixed null dereference in GPU watchdog termination code.... (Closed)

Created:
10 years ago by apatrick_chromium
Modified:
9 years, 7 months ago
CC:
chromium-reviews, apatrick_chromium, stuartmorgan, pink (ping after 24hrs), Nico
Visibility:
Public.

Description

Switched GPU watchdog timeout to be based on main thread's user + kernel time rather than wall clock time on Windows. Only on Windows because it is the only platform 58396 appears to be happening on. My latest hairbrained theory is that it is timing out and aborting while Windows boxes are resuming from hypernation. In that case wall clock time might incorporate a lot of I/O time for paging in data from swapfile. This is an attempt to hide that I/O time, counting only active CPU time. It catches hangs like this: for (;;) { } and this: for (;;) { Sleep(0); } but not this: for (;;) { Sleep(1000); } because that just makes the thread largely idle. It also does not catch deadlocks. Also fixed null dereference in GPU watchdog termination code. BUG=64648, 58396 TEST=test GPU watchdog locally, try Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=67891

Patch Set 1 #

Total comments: 1

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+108 lines, -35 lines) Patch
M chrome/gpu/gpu_main.cc View 1 1 chunk +1 line, -2 lines 0 comments Download
M chrome/gpu/gpu_thread.cc View 1 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/gpu/gpu_watchdog_thread.h View 1 2 chunks +8 lines, -1 line 0 comments Download
M chrome/gpu/gpu_watchdog_thread.cc View 1 4 chunks +95 lines, -30 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
apatrick_chromium
http://codereview.chromium.org/5301007/diff/1/chrome/gpu/gpu_watchdog_thread.cc File chrome/gpu/gpu_watchdog_thread.cc (left): http://codereview.chromium.org/5301007/diff/1/chrome/gpu/gpu_watchdog_thread.cc#oldcode64 chrome/gpu/gpu_watchdog_thread.cc:64: watched_message_loop_ = NULL; I don't think this was actually ...
10 years ago (2010-11-29 22:00:14 UTC) #1
Ken Russell (switch to Gerrit)
Did you run with --disable-gpu-watchdog and verify that there are no assertion failures upon shutdown? ...
10 years ago (2010-11-29 22:45:55 UTC) #2
apatrick_chromium
Some more changes...
10 years ago (2010-11-30 23:05:18 UTC) #3
Ken Russell (switch to Gerrit)
10 years ago (2010-11-30 23:23:44 UTC) #4
This looks like it'll work great on Windows. It would be nice if we had the same
guards on other platforms to prevent the GPU process from being unexpectedly
terminated if the machine is running out of resources...

LGTM

Powered by Google App Engine
This is Rietveld 408576698