Re: [patch] i2c-scmi: remove some bogus NULL checks

2013-10-31 Thread Wolfram Sang
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

2013-10-30 Thread Wolfram Sang
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

2013-10-30 Thread Dan Carpenter
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