i2c_use_client broken

From: Kevin O'Connor
Date: Thu Mar 04 2004 - 01:37:36 EST


Hi Greg,

In 2.6.3's i2c-core.c there is the following code:

static int i2c_inc_use_client(struct i2c_client *client)
{

if (!try_module_get(client->driver->owner))
return -ENODEV;
if (!try_module_get(client->adapter->owner)) {
module_put(client->driver->owner);
return -ENODEV;
}

return 0;
}
[...]
int i2c_use_client(struct i2c_client *client)
{
if (!i2c_inc_use_client(client))
return -ENODEV;
[...]

The i2c_inc_use_client test looks backward - the code should look like:

if (i2c_inc_use_client(client))
return -ENODEV;

because i2c_inc_use_client returns 0 on success.

If I've missed something, please let me know. I apologize if you're not
the right person to mail or if this has already been fixed.

-Kevin

--
---------------------------------------------------------------------
| Kevin O'Connor "BTW, IMHO we need a FAQ for |
| kevin@xxxxxxxxxxxx 'IMHO', 'FAQ', 'BTW', etc. !" |
---------------------------------------------------------------------
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/