On Sat, 2018-08-04 at 17:08 -0700, David Miller wrote: > From: Dmitry Safonov <dima@xxxxxxxxxx> > Date: Sun, 5 Aug 2018 00:55:44 +0100 > > > @@ -1011,8 +1011,8 @@ static int netlink_bind(struct socket *sock, > struct sockaddr *addr, > > > > if (nlk->ngroups == 0) > > groups = 0; > > - else > > - groups &= (1ULL << nlk->ngroups) - 1; > > + else if (nlk->ngroups < sizeof(long unsigned int)) > > + groups &= (1UL << nlk->ngroups) - 1; > > Sizeof is in bytes, you want to compare against bits. I'm too bad. Drop this version, please. I've resent v2.