Re: [patch] i2c-scmi: remove some bogus NULL checks
On Sat, Oct 19, 2013 at 11:46:22AM +0300, Dan Carpenter wrote: obj can't be NULL here. We already know that pkg-package.elements gives us a valid pointer so the next pointer after that is also non-NULL. Signed-off-by: Dan Carpenter dan.carpen...@oracle.com Applied to for-next, thanks! signature.asc Description: Digital signature
Re: [patch] i2c-scmi: remove some bogus NULL checks
On Sat, Oct 19, 2013 at 11:46:22AM +0300, Dan Carpenter wrote: obj can't be NULL here. We already know that pkg-package.elements gives us a valid pointer so the next pointer after that is also non-NULL. Why is that? Can't see it... Signed-off-by: Dan Carpenter dan.carpen...@oracle.com diff --git a/drivers/i2c/busses/i2c-scmi.c b/drivers/i2c/busses/i2c-scmi.c index c447e8d..5992355 100644 --- a/drivers/i2c/busses/i2c-scmi.c +++ b/drivers/i2c/busses/i2c-scmi.c @@ -223,7 +223,7 @@ acpi_smbus_cmi_access(struct i2c_adapter *adap, u16 addr, unsigned short flags, goto out; obj = pkg-package.elements + 1; - if (obj == NULL || obj-type != ACPI_TYPE_INTEGER) { + if (obj-type != ACPI_TYPE_INTEGER) { ACPI_ERROR((AE_INFO, Invalid argument type)); result = -EIO; goto out; @@ -235,7 +235,7 @@ acpi_smbus_cmi_access(struct i2c_adapter *adap, u16 addr, unsigned short flags, case I2C_SMBUS_BYTE: case I2C_SMBUS_BYTE_DATA: case I2C_SMBUS_WORD_DATA: - if (obj == NULL || obj-type != ACPI_TYPE_INTEGER) { + if (obj-type != ACPI_TYPE_INTEGER) { ACPI_ERROR((AE_INFO, Invalid argument type)); result = -EIO; goto out; @@ -246,7 +246,7 @@ acpi_smbus_cmi_access(struct i2c_adapter *adap, u16 addr, unsigned short flags, data-byte = obj-integer.value; break; case I2C_SMBUS_BLOCK_DATA: - if (obj == NULL || obj-type != ACPI_TYPE_BUFFER) { + if (obj-type != ACPI_TYPE_BUFFER) { ACPI_ERROR((AE_INFO, Invalid argument type)); result = -EIO; goto out; signature.asc Description: Digital signature
Re: [patch] i2c-scmi: remove some bogus NULL checks
On Wed, Oct 30, 2013 at 05:02:58PM +0100, Wolfram Sang wrote: --- a/drivers/i2c/busses/i2c-scmi.c +++ b/drivers/i2c/busses/i2c-scmi.c @@ -223,7 +223,7 @@ acpi_smbus_cmi_access(struct i2c_adapter *adap, u16 addr, unsigned short flags, goto out; obj = pkg-package.elements + 1; - if (obj == NULL || obj-type != ACPI_TYPE_INTEGER) { + if (obj-type != ACPI_TYPE_INTEGER) { ACPI_ERROR((AE_INFO, Invalid argument type)); result = -EIO; goto out; For obj to be 0 then pkg-package.elements must be -1. If we're getting a pointer of -1 then we're already screwed. Also we already used pkg-elements without the + 1 so we know that's not -1. The reason for this patch was that some compilers assume pointer math can't overflow and my checker was complaining. We use -fno-strict-overflow in the kernel, but it still seemed worth cleaning. regards, dan carpenter -- To unsubscribe from this list: send the line unsubscribe linux-i2c in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html