From: Andrew Morton Please don't do that. Cc: Kumar Gala Cc: Jean Delvare Cc: Greg KH Signed-off-by: Andrew Morton --- drivers/i2c/i2c-virt.c | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-) diff -puN drivers/i2c/i2c-virt.c~i2c-add-support-for-virtual-i2c-adapters-tidy drivers/i2c/i2c-virt.c --- devel/drivers/i2c/i2c-virt.c~i2c-add-support-for-virtual-i2c-adapters-tidy 2006-04-16 17:23:38.000000000 -0700 +++ devel-akpm/drivers/i2c/i2c-virt.c 2006-04-16 17:23:38.000000000 -0700 @@ -51,9 +51,9 @@ i2c_virt_master_xfer(struct i2c_adapter */ mutex_lock(&parent->bus_lock); - if ((ret = priv->select(parent, priv->client, priv->id)) >= 0) { + ret = priv->select(parent, priv->client, priv->id); + if (ret >= 0) ret = parent->algo->master_xfer(parent, msgs, num); - } priv->deselect(parent, priv->client, priv->id); mutex_unlock(&parent->bus_lock); @@ -75,10 +75,10 @@ i2c_virt_smbus_xfer(struct i2c_adapter * */ mutex_lock(&parent->bus_lock); - if ((ret = priv->select(parent, priv->client, priv->id)) == 0) { + ret = priv->select(parent, priv->client, priv->id); + if (ret == 0) ret = parent->algo->smbus_xfer(parent, addr, flags, read_write, command, size, data); - } priv->deselect(parent, priv->client, priv->id); mutex_unlock(&parent->bus_lock); @@ -106,9 +106,9 @@ i2c_add_virt_adapter(struct i2c_adapter struct i2c_virt_priv *priv; struct i2c_algorithm *algo; - if (!(adap = kzalloc(sizeof(struct i2c_adapter) - + sizeof(struct i2c_virt_priv) - + sizeof(struct i2c_algorithm), GFP_KERNEL))) + adap = kzalloc(sizeof(struct i2c_adapter) + sizeof(struct i2c_virt_priv) + + sizeof(struct i2c_algorithm), GFP_KERNEL); + if (!adap) return NULL; priv = (struct i2c_virt_priv *)(adap + 1); @@ -158,7 +158,8 @@ int i2c_del_virt_adapter(struct i2c_adap { int ret; - if ((ret = i2c_del_adapter_nolock(adap)) < 0) + ret = i2c_del_adapter_nolock(adap); + if (ret < 0) return ret; kfree(adap); _