Re: [PATCH 04/15] hwmon: (ina2xx) fix Wvoid-pointer-to-enum-cast warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 14/08/2023 10:33, David Laight wrote:
> From: Krzysztof Kozlowski
>> Sent: 10 August 2023 10:32
>>
>> 'chip' is an enum, thus cast of pointer on 64-bit compile test with W=1
>> causes:
>>
>>   ina2xx.c:627:10: error: cast to smaller integer type 'enum ina2xx_ids' from 'const void *' [-
>> Werror,-Wvoid-pointer-to-enum-cast]
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
>> ---
>>  drivers/hwmon/ina2xx.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/hwmon/ina2xx.c b/drivers/hwmon/ina2xx.c
>> index a47973e2d606..d8415d1f21fc 100644
>> --- a/drivers/hwmon/ina2xx.c
>> +++ b/drivers/hwmon/ina2xx.c
>> @@ -624,7 +624,7 @@ static int ina2xx_probe(struct i2c_client *client)
>>  enum ina2xx_ids chip;
>>
>>  if (client->dev.of_node)
>> -chip = (enum ina2xx_ids)of_device_get_match_data(&client->dev);
>> +chip = (uintptr_t)of_device_get_match_data(&client->dev);
> 
> The kernel type would be 'long' not uintptr_t.

Yeah, Greg also pointed out. It was applied, so no sure if it is worth
to change to kernel_ulong_t.

> But this all looks like something horrid is being done.

Why exactly? This is pretty often pattern, code is correct and easy to
understand.

> 
> (And you've clearly lost all the tabs)

It's your email client who lost them:
https://lore.kernel.org/all/20230810093157.94244-4-krzysztof.kozlowski@xxxxxxxxxx/

Best regards,
Krzysztof




[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux