[Intel-gfx] [PATCH 11/12 v2] drm/i915: wait render timeout ioctl

Ben Widawsky ben at bwidawsk.net
Sun Apr 29 04:11:34 CEST 2012


On Fri, 27 Apr 2012 16:24:24 +0100
Chris Wilson <chris at chris-wilson.co.uk> wrote:

> On Thu, 26 Apr 2012 16:03:08 -0700, Ben Widawsky <ben at bwidawsk.net>
> wrote:
> > This helps implement glClientWaitSync.
> > 
> > Finally we can use the new timed seqno waiting function to allow
> > userspace to wait on a request with a timeout. This implements that
> > interface.
> > 
> > The new ioctl is very straight forward, there is a flags field
> > which I envision may be useful for various flush permutations of
> > the command.
> 
> What are the semantics of the ioctl? A simple use case would help
> specify the interface here.

The first time I sent out the series, I included the libdrm and igt
test. Is this what you're looking for, or something in the commit
message?

> 
> In particular, I can't tell whether the return value (timeout_ns) is
> meant to be the time elapsed or the time remaining.  What value is
> returned in the timeout if we are interrupted before the wait
> completes? Would
>   end = gettimeofday() + timeout;
>   do {
>     ret = i915_gem_wait(handle, 0, &timeout);
>   } while (ret == -1 && errno == EINTR);
>   assert(gettimeofday() <= end);
> wait forever, or until the original timeout expires?
> -Chris
> 

The return value should give the remaining time left if the return value
was not 0, though I venture to guess you're Socratically trying to tell
me something, so I'll go through this again and find the bug.



More information about the Intel-gfx mailing list