Re: [PATCH 1/2] sysctl: add overflow detection to proc_get_long()

From: Christian Brauner
Date: Sun Oct 14 2018 - 18:44:00 EST


On October 15, 2018 12:13:25 AM GMT+02:00, Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
>> > Yecchh... First of all, the cast back to unsigned long long is
>completely
>> > pointless. What's more,
>>
>> Sorry, seriously asking: why?
>
>In C everything is casted to the same type before doing an operation,

Oh, ok that's what we're talking about. I
thought the whole check is pointless. I
didn't read careful enough apparently.

Tbh, even if the second cast is not
necessary it makes implicit behavior
explicit.
I've also seen this form more than
the one without the explicit cast.
But I won't fight it. If other people
prefer it without the second cast; fine.

>in this case comparison
>
>> This was meant to handle the case where
>> sizeof(unsigned long long) != sizeof(unsigned long) and I just looked
>at
>> _kstrtoul() which does the same:
>
>Second cast is unnecessary. I don't remember why I did 2 casts.