[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190705173011.GA2882@localhost.localdomain>
Date: Fri, 5 Jul 2019 19:30:11 +0200
From: Lorenzo Bianconi <lorenzo.bianconi@...hat.com>
To: David Ahern <dsahern@...il.com>
Cc: Marek Majkowski <marek@...udflare.com>,
David Miller <davem@...emloft.net>, netdev@...r.kernel.org,
kernel-team <kernel-team@...udflare.com>
Subject: Re: NEIGH: BUG, double timer add, state is 8
On Jul 05, David Ahern wrote:
> On 7/4/19 3:59 PM, Marek Majkowski wrote:
> > I found a way to hit an obscure BUG in the
> > net/core/neighbour.c:neigh_add_timer(), by piping two carefully
> > crafted messages into AF_NETLINK socket.
> >
> > https://github.com/torvalds/linux/blob/v5.2-rc7/net/core/neighbour.c#L259
> >
> > if (unlikely(mod_timer(&n->timer, when))) {
> > printk("NEIGH: BUG, double timer add, state is %x\n", n->nud_state);
> > dump_stack();
> > }
> >
> > The repro is here:
> > https://gist.github.com/majek/d70297b9d72bc2e2b82145e122722a0c
> >
> > wget https://gist.githubusercontent.com/majek/d70297b9d72bc2e2b82145e122722a0c/raw/9e140bcedecc28d722022f1da142a379a9b7a7b0/double_timer_add_bug.c
>
> Thanks for the report - and the reproducer. I am on PTO through Monday;
> I will take a look next week if no one else does.
Hi David and Marek,
looking at the reproducer it seems to me the issue is due to the use of
'NTF_USE' from userspace.
Should we unschedule the neigh timer if we are in IN_TIMER receiving this
flag from userspace? (taking appropriate locking)
Regards,
Lorenzo
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists