On Thu, 2013-03-21 at 10:43 -0700, Eric Dumazet wrote: > On Thu, 2013-03-21 at 13:25 -0400, Paul Gortmaker wrote: > > > That is also reasonably portable back to 2.6.34. And it is more > > interesting too -- it will be interesting in a preempt_rt context > > too, once RT moves ahead off the current 3.6 baseline, which still > > has the old count-limit of 10 vs the new 2ms time limit. > > > > RT (3.4 and 3.6 based) currently has this patch from Steven: > > http://git.kernel.org/cgit/linux/kernel/git/paulg/3.6-rt-patches.git/tree/net-tx-action-avoid-livelock-on-rt.patch > > Interesting, as Google has an internal patch removing this trylock() as > well. > > I think I should upstream it eventually ;) Yes please :-) -- Steve > > commit 2f0a3f573b531dc57c268fd809dc65169edae369 > Author: Eric Dumazet <edumazet@xxxxxxxxxx> > Date: Thu Dec 13 09:18:01 2012 -0800 > > net-dev_xmit_hold_queues: fix a busy loop in net_tx_action > > Under load, net_tx_action() fails to acquire qdisc lock > and reschedules qdisc in a never ending loop. > > The spin_trylock() has almost no chance to complete because > of ticket spinlock and xmit_hold_queue holding the lock for long > period of times. > > -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html