lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1433941128-19798-1-git-send-email-hofrat@osadl.org>
Date:	Wed, 10 Jun 2015 14:58:48 +0200
From:	Nicholas Mc Guire <hofrat@...dl.org>
To:	Russell King <rmk+kernel@....linux.org.uk>
Cc:	David Airlie <airlied@...ux.ie>, dri-devel@...ts.freedesktop.org,
	linux-kernel@...r.kernel.org, Nicholas Mc Guire <hofrat@...dl.org>
Subject: [PATCH RFC] drm/i2c: tda998x: dead-code or unhandled error condition ?

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@...dl.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(-)

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);
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ