[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130528103927.GB11547@mithrandir>
Date: Tue, 28 May 2013 12:39:27 +0200
From: Thierry Reding <thierry.reding@...il.com>
To: Arto Merilainen <amerilainen@...dia.com>
Cc: "airlied@...ux.ie" <airlied@...ux.ie>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
Terje Bergstrom <tbergstrom@...dia.com>,
"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Keith Packard <keithp@...thp.com>, xorg-devel@...ts.x.org
Subject: Re: [PATCH 2/6] gpu: host1x: Fix syncpoint wait return value
On Mon, May 27, 2013 at 09:55:46AM +0300, Arto Merilainen wrote:
> On 05/26/2013 01:12 PM, Thierry Reding wrote:
> >* PGP Signed by an unknown key
> >
> >On Fri, May 17, 2013 at 02:49:44PM +0300, Arto Merilainen wrote:
[...]
> >Thinking about it, maybe it would be good to have two separate error
> >codes. Keeping -EAGAIN for the case where a zero timeout was passed
> >doesn't sound too bad to differentiate it from the case where a non-
> >zero timeout was passed and it actually timed out. What do you think?
>
> I agree, in this case it would not look bad at all. However, user
> space libraries may loop until the ioctl return code is something
> else than -EAGAIN or -EINTR. Especially function drmIoctl() in
> libdrm does this which is why I noted this isssue in the first
> place.
>
> If user space uses zero timeout to just check if a syncpoint value
> has already passed the library continues looping until the syncpoint
> value actually passes. Of course, we could just modify the ioctl
> interface to "cast" this return code to something else but that does
> not seem correct.
That doesn't sound right. Maybe drmIoctl() needs fixing instead. Looking
at the history, drmIoctl() was introduced to automatically loop if a
signal was received (commit 8b9ab108ec1f2ba2b503f713769c4946849b3cb2).
However the ioctl(3p) manpage doesn't mention that ioctl() returns
EAGAIN in case it is interrupted by a signal.
I'm adding Keith as author of that commit and the xorg-devel mailing
list on Cc to get some more eyes on this.
Thierry
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists