[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180905.221156.794134129220434079.davem@davemloft.net>
Date: Wed, 05 Sep 2018 22:11:56 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: dima@...sta.com
Cc: linux-kernel@...r.kernel.org, 0x7f454c46@...il.com,
torvalds@...ux-foundation.org, herbert@...dor.apana.org.au,
steffen.klassert@...unet.com, netdev@...r.kernel.org
Subject: Re: [PATCH] netlink: Make groups check less stupid in
netlink_bind()
From: Dmitry Safonov <dima@...sta.com>
Date: Mon, 3 Sep 2018 22:40:51 +0100
> As Linus noted, the test for 0 is needless, groups type can follow the
> usual kernel style and 8*sizeof(unsigned long) is BITS_PER_LONG:
>
>> The code [..] isn't technically incorrect...
>> But it is stupid.
>> Why stupid? Because the test for 0 is pointless.
>>
>> Just doing
>> if (nlk->ngroups < 8*sizeof(groups))
>> groups &= (1UL << nlk->ngroups) - 1;
>>
>> would have been fine and more understandable, since the "mask by shift
>> count" already does the right thing for a ngroups value of 0. Now that
>> test for zero makes me go "what's special about zero?". It turns out
>> that the answer to that is "nothing".
> [..]
>> The type of "groups" is kind of silly too.
>>
>> Yeah, "long unsigned int" isn't _technically_ wrong. But we normally
>> call that type "unsigned long".
>
> Cleanup my piece of pointlessness.
>
> Cc: "David S. Miller" <davem@...emloft.net>
> Cc: Herbert Xu <herbert@...dor.apana.org.au>
> Cc: Steffen Klassert <steffen.klassert@...unet.com>
> Cc: netdev@...r.kernel.org
> Fairly-blamed-by: Linus Torvalds <torvalds@...ux-foundation.org>
> Signed-off-by: Dmitry Safonov <dima@...sta.com>
Applied to net-next, thanks.
Powered by blists - more mailing lists