[PATCH] drm: Wake up next in drm_read() chain if we are forced to putback the event

Chris Wilson chris at chris-wilson.co.uk
Wed Feb 27 22:09:59 UTC 2019


Quoting Chris Wilson (2019-02-27 10:17:15)
> Quoting Daniel Vetter (2017-08-07 10:28:58)
> > On Fri, Aug 04, 2017 at 09:23:28AM +0100, Chris Wilson wrote:
> > > After an event is sent, we try to copy it into the user buffer of the
> > > first waiter in drm_read() and if the user buffer doesn't have enough
> > > room we put it back onto the list. However, we didn't wake up any
> > > subsequent waiter, so that event may sit on the list until either a new
> > > vblank event is sent or a new waiter appears. Rare, but in the worst
> > > case may lead to a stuck process.
> > > 
> > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > > Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> > 
> > New subtestcase in igt at drm_read?
> 
> Caught it!
> Testcase: igt/drm_read/short-buffer-wakeup

And pushed with Ville's irc r-b.
-Chris


More information about the dri-devel mailing list