diff mbox

omapfb/dss: wait_for_completion_interruptible_timeout expects long

Message ID 1469466767-23352-1-git-send-email-hofrat@osadl.org (mailing list archive)
State New, archived
Headers show

Commit Message

Nicholas Mc Guire July 25, 2016, 5:12 p.m. UTC
wait_for_completion_timeout_interruptible returns long not unsigned long.
an appropriately typed variable is introduced and assignments fixed up.

Fixes: f76ee892a99e ("omapfb: copy omapdss & displays for omapfb")

Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
---

API non-compliance was located by coccinelle

This is mostly cosmetic since the returned value is only compared 
at present, however if remaining time (completion occurred) where ever 
used, then a signal received would be interpreted as a large remaining 
jiffies left, which would be wrong.

Compile tested with: omap2plus_defconfig (implies CONFIG_FB_OMAP2_DSS)

Patch is against 4.7.0-rc7 (localversion-next -next-20160724)

 drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Tomi Valkeinen Aug. 10, 2016, 10:21 a.m. UTC | #1
On 25/07/16 20:12, Nicholas Mc Guire wrote:
> wait_for_completion_timeout_interruptible returns long not unsigned long.
> an appropriately typed variable is introduced and assignments fixed up.
> 
> Fixes: f76ee892a99e ("omapfb: copy omapdss & displays for omapfb")
> 
> Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
> ---
> 
> API non-compliance was located by coccinelle
> 
> This is mostly cosmetic since the returned value is only compared 
> at present, however if remaining time (completion occurred) where ever 
> used, then a signal received would be interpreted as a large remaining 
> jiffies left, which would be wrong.
> 
> Compile tested with: omap2plus_defconfig (implies CONFIG_FB_OMAP2_DSS)
> 
> Patch is against 4.7.0-rc7 (localversion-next -next-20160724)
> 
>  drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)

Thanks, queued for v4.9. I dropped the "Fixes: " line, as that commit
only does a copy of the files, so the commit didn't really introduce the
bug.

 Tomi
Nicholas Mc Guire Aug. 10, 2016, 10:30 a.m. UTC | #2
On Wed, Aug 10, 2016 at 01:21:46PM +0300, Tomi Valkeinen wrote:
> On 25/07/16 20:12, Nicholas Mc Guire wrote:
> > wait_for_completion_timeout_interruptible returns long not unsigned long.
> > an appropriately typed variable is introduced and assignments fixed up.
> > 
> > Fixes: f76ee892a99e ("omapfb: copy omapdss & displays for omapfb")
> > 
> > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
> > ---
> > 
> > API non-compliance was located by coccinelle
> > 
> > This is mostly cosmetic since the returned value is only compared 
> > at present, however if remaining time (completion occurred) where ever 
> > used, then a signal received would be interpreted as a large remaining 
> > jiffies left, which would be wrong.
> > 
> > Compile tested with: omap2plus_defconfig (implies CONFIG_FB_OMAP2_DSS)
> > 
> > Patch is against 4.7.0-rc7 (localversion-next -next-20160724)
> > 
> >  drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c | 7 ++++---
> >  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> Thanks, queued for v4.9. I dropped the "Fixes: " line, as that commit
> only does a copy of the files, so the commit didn't really introduce the
> bug.
>
sorry for the wrong fixes tag - did not notice that - and thanks for
fixing this.

thx!
hofrat
--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c b/drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c
index 3691bde..a864608 100644
--- a/drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c
+++ b/drivers/video/fbdev/omap2/omapfb/dss/dispc-compat.c
@@ -644,6 +644,7 @@  int omap_dispc_wait_for_irq_interruptible_timeout(u32 irqmask,
 {
 
 	int r;
+	long time_left;
 	DECLARE_COMPLETION_ONSTACK(completion);
 
 	r = omap_dispc_register_isr(dispc_irq_wait_handler, &completion,
@@ -652,15 +653,15 @@  int omap_dispc_wait_for_irq_interruptible_timeout(u32 irqmask,
 	if (r)
 		return r;
 
-	timeout = wait_for_completion_interruptible_timeout(&completion,
+	time_left = wait_for_completion_interruptible_timeout(&completion,
 			timeout);
 
 	omap_dispc_unregister_isr(dispc_irq_wait_handler, &completion, irqmask);
 
-	if (timeout == 0)
+	if (time_left == 0)
 		return -ETIMEDOUT;
 
-	if (timeout == -ERESTARTSYS)
+	if (time_left == -ERESTARTSYS)
 		return -ERESTARTSYS;
 
 	return 0;