[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080819.035406.107673885.davem@davemloft.net>
Date: Tue, 19 Aug 2008 03:54:06 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: herbert@...dor.apana.org.au
Cc: jarkao2@...il.com, netdev@...r.kernel.org
Subject: Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock().
From: Herbert Xu <herbert@...dor.apana.org.au>
Date: Tue, 19 Aug 2008 20:51:33 +1000
> On Tue, Aug 19, 2008 at 10:31:51AM +0000, Jarek Poplawski wrote:
> >
> > > > > void __netif_schedule(struct Qdisc *q)
> > > > > {
> > > > > + if (unlikely(test_bit(__QDISC_STATE_DEACTIVATED, &q->state)))
> > > > > + return;
> > > >
> > > > Why I can't see this code in net-2.6? BTW, I guess it should be now
> > > > moved to the current __netif_reschedule()?
> > >
> > > I deleted it, it's unnecessary with your "both bits clear" fix
> > > which I also added.
> >
> > Herbert was concerned earlier with this:
> > "What I mean is the extremely unlikely scenario of net_tx_action
> > always failing on trylock because dev_deactivate has grabbed the
> > lock to check whether net_tx_action has completed."
> >
> > So, I guess this could help here.
>
> Right. Even though the live-lock is an extremely unlikely event,
> as the aliveness flag check isn't on the fast path anyway I think
> we should keep it.
Every qdisc_run() will invoke __netif_schedule() so it is
a fast path I think :-)
But anyways, all of these paths didle with these state bits
anyways, so it's in the cache and a cheap test.
I can add it back once we're all sure we're talking about
the same thing. So you're saying that we should add the
__QDISC_STATE_DEACTIVATED test to __netif_schedule(), right?
I was confused because you say "we should keep it", it was never
in the net-2.6 tree and only existed in my RFC patch posting, so
I'm trying to figure out what you meant. :-)
--
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