[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140319224442.GJ12291@order.stressinduktion.org>
Date: Wed, 19 Mar 2014 23:44:42 +0100
From: Hannes Frederic Sowa <hannes@...essinduktion.org>
To: David Miller <davem@...emloft.net>
Cc: stephen@...workplumber.org, netdev@...r.kernel.org
Subject: Re: [PATCH net] ipv6: fix RTNL assert fail in DAD
On Wed, Mar 19, 2014 at 01:53:19PM -0400, David Miller wrote:
> From: Stephen Hemminger <stephen@...workplumber.org>
> Date: Tue, 18 Mar 2014 23:58:11 -0700
>
> > On Wed, 19 Mar 2014 00:17:36 -0400 (EDT)
> > David Miller <davem@...emloft.net> wrote:
> >
> >> From: Stephen Hemminger <stephen@...workplumber.org>
> >> Date: Tue, 18 Mar 2014 17:54:06 -0700
> >>
> >> > On Tue, 18 Mar 2014 01:29:08 +0100
> >> > Hannes Frederic Sowa <hannes@...essinduktion.org> wrote:
> >> >
> >> >> I wonder if we should put the whole ipv6_ifa_notify infrastructure in a
> >> >> workqueue? I don't like that either and it could add subtile races.
> >> >
> >> > That is option, might be some call chains that already have rtnl_lock held.
> >>
> >> There are TAHI ipv6 conformance tests that expect state changes to be
> >> precisely synchronous.
Exactly, I was afraid of those things (not exactly of TAHI breakage but of
real packet loss in case of late workqueue scheduling).
> >> And frankly it's pretty reasonable to send two packets back to back,
> >> one which causes the state change and one which tests if the state
> >> change happened, and expect that to work.
> >
> > It is more the timer based state changes that are problematic because
> > they aren't acquire RTNL.
>
> Ok, the timer stuff could run from a workqueue just fine.
We have no-timer invocations, too, like addrconf_prefix_rcv. In that case the
whole handling of the router advertisment should get deferred into the
workqueue.
Bye,
Hannes
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists