# Re: \[PATCH\] video: treat signal like timeout as failure

- From: Tomi Valkeinen \<hidden\>
- Date: 2015-03-10 12:43:57 
- List: linux-fbdev
- Page: https://ratatoskr.run/linux-fbdev/2015/03/8708444
- Thread: https://ratatoskr.run/linux-arm-kernel/2015/01/8705202/t.md

```text
On 20/01/15 07:23, Nicholas Mc Guire wrote:
> if(!wait_for_completion_interruptible_timeout(...))
> only handles the timeout case - this patch adds handling the
> signal case the same as timeout and cleans up.
> 
> Signed-off-by: Nicholas Mc Guire <redacted>
> ---
> 
> Only the timeout case was being handled, return of 0 in 
> wait_for_completion_interruptible_timeout, the signal case (-ERESTARTSYS)
> was treated just like the case of successful completion, which is most 
> likely not reasonable.
> 
> Note that exynos_mipi_dsi_wr_data/exynos_mipi_dsi_rd_data return values
> are not checked at the call sites in s6e8ax0.c (cmd_read/cmd_write)!
> 
> This patch simply treats the signal case the same way as the timeout case,
> by releasing locks and returning 0 - which might not be the right thing to
> do - this needs a review by someone knowing the details of this driver.

While I agree that this patch is a bit better than the current state,
the code still looks wrong as Russell said.

I can merge this, but I'd rather have someone from Samsung look at the
code and change it to use wait_for_completion_killable_timeout() if
that's what this code is really supposed to use.

 Tomi


```

## Attachments

- [signature.asc](https://ratatoskr.run/linux-fbdev/2015/03/8708444/attachment/0) (application/pgp-signature, 819 bytes)
