On Tue, Jan 29, 2013 at 05:39:46PM +0100, Daniel Vetter wrote: > On Tue, Jan 29, 2013 at 06:13:32PM +0200, ville.syrjala at linux.intel.com wrote: > > Someone mentioned on irc that intel_crtc_wait_for_pending_flips() was > > getting stuck in some cases. This rang a bell since I was poking around > > that stuff last year. > > > > The issue that I'm trying to fix here is processes getting stuck in D > > state when a GPU reset happens while page flips have been scheduled. > > > > Testing is easy 1) fire up 'glxgears -fullscreen', run 'gem_hang 0', > > try to VT switch. Without this series X and some kworker soon get stuck > > in D state and you're left with a useless box. With the patch set, you > > wait a while, the GPU hangcheck kicks in, and you get your console back. > > Broken record maintainer request: Can you please bake that into an i-g-t? > I think (hope) that running one of the delayed flip tests vs. the hangman > (gem_hang is a bit evil since it can kill boxes for real) should do the > trick. Then maybe also run one of the wf-vblank tests vs. hangman to check > that we cancel those correctly, too. Actually for the case you're fixing here we probably need a delayed flip vs. modeset (without flip event checks) against a simulated gpu hang. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch