Re: [PATCH] staging: ks7010: fix wait_for_completion_interruptible_timeout return handling

From: Nicholas Mc Guire
Date: Tue Jul 26 2016 - 02:43:50 EST


On Mon, Jul 25, 2016 at 10:54:03PM +0200, Wolfram Sang wrote:
> On Mon, Jul 25, 2016 at 09:21:50PM +0200, Nicholas Mc Guire wrote:
> > wait_for_completion_interruptible_timeout return 0 on timeout and
> > -ERESTARTSYS if interrupted. The check for
> > !wait_for_completion_interruptible_timeout() would report an interrupt
> > as timeout. Further, while HZ/50 will work most of the time it could
>
> Wouldn't it interpret -ERESTARTSYS as *no timeout*?
>

yup - actually the current code just treats the -ERESTARTSYS
case as success.

> Anyway, the plain !0 comparison for me clearly shows that
> 'interruptible' was more copy&pasted then really planned or supported.
> If it was, it would need to cancel something. Also, 20ms is pretty hard
> to cancel for a user ;) Given all that and the troubles we had with
> 'interruptible' in the I2C subsystem, I'd much vote for dropping
> interruptible here.
>
> > fail for HZ < 50, so this is switched to msecs_to_jiffies(20).
>
> Rest looks good, thanks!
>

thx!
hofrat