[igt-dev] [PATCH i-g-t] tests/kms_frontbuffer_tracking: Make sure GPU is quiescent before handling assertions.

Dhinakaran Pandiyan dhinakaran.pandiyan at intel.com
Fri Dec 14 00:18:28 UTC 2018


On Thu, 2018-12-13 at 11:00 +0100, Daniel Vetter wrote:
> On Thu, Dec 13, 2018 at 10:52:34AM +0100, Maarten Lankhorst wrote:
> > Typically PSR enables in around 136 ms, but on some tests the we
> > have
> > to explicitly make sure that the gpu is idle before rendering.
> > 
> > Otherwise, sometimes we wait for the background flusher to finish,
> > which will take at least a second longer, and causes the wait for
> > PSR to timeout.
> > 
> > On kms_frontbuffer_tracking:
> > Starting subtest: psr-2p-scndscrn-shrfb-plflip-blt
> > psr_active(debugfs_fd, true) took 136ms
> > psr_active(debugfs_fd, true) took 136ms
> > psr_active(debugfs_fd, true) took 350ms
> > psr_active(debugfs_fd, true) took 136ms
> > psr_active(debugfs_fd, true) took 1598ms
> > 
> > Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
> > Cc: José Roberto de Souza <jose.souza at intel.com>
> > Cc: Chris Wilson <chris at chris-wilson.co.uk>
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108733
> > Suggested-by: Chris Wilson <chris at chris-wilson.co.uk>
> > ---
> >  tests/kms_frontbuffer_tracking.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/tests/kms_frontbuffer_tracking.c
> > b/tests/kms_frontbuffer_tracking.c
> > index 276ef83ce386..7924bb902a2a 100644
> > --- a/tests/kms_frontbuffer_tracking.c
> > +++ b/tests/kms_frontbuffer_tracking.c
> > @@ -1642,6 +1642,9 @@ static void __do_assertions(const struct
> > test_mode *t, int flags,
> >  {
> >  	flags = adjust_assertion_flags(t, flags);
> >  
> > +	/* Make sure any submitted rendering is now idle. */
> > +	gem_quiescent_gpu(drm.fd);

Shouldn't this be called from draw_rect() so that the flip is done
after rendering is complete?




> 
> Hm, I thought we do this already at open time, but oh well, makes
> sense.
> 
> Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> > +
> >  	igt_debug("checking asserts in line %i\n", line);
> >  
> >  	wait_user(2, "Paused before assertions.");
> > -- 
> > 2.19.2
> > 
> > _______________________________________________
> > igt-dev mailing list
> > igt-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/igt-dev
> 
> 



More information about the igt-dev mailing list