[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1533425198.2679.148.camel@arista.com>
Date:   Sun, 05 Aug 2018 00:26:38 +0100
From:   Dmitry Safonov <dima@...sta.com>
To:     Nathan Chancellor <natechancellor@...il.com>
Cc:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        linux-kernel@...r.kernel.org, stable@...r.kernel.org,
        "David S. Miller" <davem@...emloft.net>,
        Herbert Xu <herbert@...dor.apana.org.au>,
        Steffen Klassert <steffen.klassert@...unet.com>,
        netdev@...r.kernel.org
Subject: Re: [PATCH 4.4 106/124] netlink: Do not subscribe to non-existent
 groups
On Sat, 2018-08-04 at 16:21 -0700, Nathan Chancellor wrote:
> On Sun, Aug 05, 2018 at 12:12:02AM +0100, Dmitry Safonov wrote:
> > On Sat, 2018-08-04 at 15:49 -0700, Nathan Chancellor wrote:
> > > dmesg output attached, please let me know if you need anything
> > > else.
> > 
> > Could you try with this diff instead?
> > It looks like, I'm too bad with shifts and shifted for 64 bytes.
> > 
> > -- 
> > Thanks,
> >              Dmitry
> > diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
> > index 7d860a22e5fb..b78bb7dc06fe 100644
> > --- a/net/netlink/af_netlink.c
> > +++ b/net/netlink/af_netlink.c
> > @@ -1011,7 +1011,7 @@ static int netlink_bind(struct socket *sock,
> > struct sockaddr *addr,
> >  
> >  	if (nlk->ngroups == 0)
> >  		groups = 0;
> > -	else
> > +	else if (nlk->ngroups < 64)
> >  		groups &= (1ULL << nlk->ngroups) - 1;
> >  
> >  	bound = nlk->bound;
> 
> This fixed my issue. If needed:
> 
> Tested-by: Nathan Chancellor <natechancellor@...il.com>
> 
Thanks for the testing, sorry again for the breakage.
Will send the patch shortly (with sizeof(unsigned long long) instead of
hard-coded 64). Hopefully, not too late.
(and then will go to bed and feel myself awful - not knowing C after so
many years).
-- 
Thanks,
             Dmitry
Powered by blists - more mailing lists
 
