RE: [PATCH] staging:kpc2000:Fix dubious x | !y sparse warning

Matt Sickler
2019-08-01T19:22:19Z

>-----Original Message-----
>From: devel <driverdev-devel-bounces@linuxdriverproject.org> On Behalf Of Greg KH
>Sent: Thursday, August 01, 2019 11:35 AM
>To: Harsh Jain <harshjain32@gmail.com>
>Cc: devel@driverdev.osuosl.org; linux-kernel@vger.kernel.org
>Subject: Re: [PATCH] staging:kpc2000:Fix dubious x | !y sparse warning
>
>On Thu, Aug 01, 2019 at 12:06:06AM +0530, Harsh Jain wrote:
>> Bitwise OR(|) operation with 0 always yield same result.
>> It fixes dubious x | !y sparse warning.
>>
>> Signed-off-by: Harsh Jain <harshjain32@gmail.com>
>> ---
>> drivers/staging/kpc2000/kpc2000_i2c.c | 16 +---------------
>> 1 file changed, 1 insertion(+), 15 deletions(-)
>>
>> diff --git a/drivers/staging/kpc2000/kpc2000_i2c.c b/drivers/staging/kpc2000/kpc2000_i2c.c
>> index b108da4..5f027d7c 100644
>> --- a/drivers/staging/kpc2000/kpc2000_i2c.c
>> +++ b/drivers/staging/kpc2000/kpc2000_i2c.c
>> @@ -536,29 +536,15 @@ static u32 i801_func(struct i2c_adapter *adapter)
>>
>> u32 f =
>> I2C_FUNC_I2C | /* 0x00000001 (I enabled this one) */
>> - !I2C_FUNC_10BIT_ADDR | /* 0x00000002 */
>> - !I2C_FUNC_PROTOCOL_MANGLING | /* 0x00000004 */
>> ((priv->features & FEATURE_SMBUS_PEC) ? I2C_FUNC_SMBUS_PEC : 0) | /* 0x00000008 */
>> - !I2C_FUNC_SMBUS_BLOCK_PROC_CALL | /* 0x00008000 */
>> I2C_FUNC_SMBUS_QUICK | /* 0x00010000 */
>> - !I2C_FUNC_SMBUS_READ_BYTE | /* 0x00020000 */
>> - !I2C_FUNC_SMBUS_WRITE_BYTE | /* 0x00040000 */
>> - !I2C_FUNC_SMBUS_READ_BYTE_DATA | /* 0x00080000 */
>> - !I2C_FUNC_SMBUS_WRITE_BYTE_DATA | /* 0x00100000 */
>> - !I2C_FUNC_SMBUS_READ_WORD_DATA | /* 0x00200000 */
>> - !I2C_FUNC_SMBUS_WRITE_WORD_DATA | /* 0x00400000 */
>> - !I2C_FUNC_SMBUS_PROC_CALL | /* 0x00800000 */
>> - !I2C_FUNC_SMBUS_READ_BLOCK_DATA | /* 0x01000000 */
>> - !I2C_FUNC_SMBUS_WRITE_BLOCK_DATA | /* 0x02000000 */
>
>This is ok, it is showing you that these bits are explicitly being not
>set. Which is good, now you can go through the list and see that all
>are accounted for.
>
>So I think this should stay as-is, thanks.

I was going to say the same thing, but I didn't know what the kernel style guideline was.
Would Linus prefer this style or would commenting them out be preferred?
Seems like the sparse warnings means the current style is not acceptable?