diff mbox

[RFC] drm/i2c: tda998x: dead-code or unhandled error condition ?

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

Commit Message

Nicholas Mc Guire June 10, 2015, 12:58 p.m. UTC
event API conformance testing with coccinelle spatches are being
used to locate API usage inconsistencies this triggert with:
./drivers/gpu/drm/i2c/tda998x_drv.c:1062
        incorrect check for negative return

The return of wait_event_timeout is always >= 0, thus the negative 
check was effectively being ignoring - as the timeout will be checked
a few lines below the error condition being checked here seems to be
wrong or this is simply dead code which would be my guess as the
timeout condition check covers the wait-queue related failure condition.

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

Can't really determine what the right fix for this would be - someone
that knows this driver would need to check - in any case the current
code seems broken.

Patch was compile tested with  x86_64_defconfig + CONFIG_DRM_I2C_SIL164=m

Patch is against 4.1-rc7 (localversion-next is -next-20150610)

 drivers/gpu/drm/i2c/tda998x_drv.c |    4 ----
 1 file changed, 4 deletions(-)

Comments

Jean-Francois Moine July 28, 2015, 8:25 a.m. UTC | #1
On Wed, 10 Jun 2015 14:58:48 +0200
Nicholas Mc Guire <hofrat@osadl.org> wrote:

> event API conformance testing with coccinelle spatches are being
> used to locate API usage inconsistencies this triggert with:
> ./drivers/gpu/drm/i2c/tda998x_drv.c:1062
>         incorrect check for negative return
> 
> The return of wait_event_timeout is always >= 0, thus the negative 
> check was effectively being ignoring - as the timeout will be checked
> a few lines below the error condition being checked here seems to be
> wrong or this is simply dead code which would be my guess as the
> timeout condition check covers the wait-queue related failure condition.
> 
> Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>

Acked-by: Jean-Francois Moine <moinejf@free.fr>
diff mbox

Patch

diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c
index fe1599d..d489a6e 100644
--- a/drivers/gpu/drm/i2c/tda998x_drv.c
+++ b/drivers/gpu/drm/i2c/tda998x_drv.c
@@ -1065,10 +1065,6 @@  static int read_edid_block(void *data, u8 *buf, unsigned int blk, size_t length)
 		i = wait_event_timeout(priv->wq_edid,
 					!priv->wq_edid_wait,
 					msecs_to_jiffies(100));
-		if (i < 0) {
-			dev_err(&priv->hdmi->dev, "read edid wait err %d\n", i);
-			return i;
-		}
 	} else {
 		for (i = 100; i > 0; i--) {
 			msleep(1);