]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'sched_skb_free_defer'
authorDavid S. Miller <davem@davemloft.net>
Wed, 15 Jun 2016 21:08:36 +0000 (14:08 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 15 Jun 2016 21:08:36 +0000 (14:08 -0700)
commitee00b1138832b7c8e444ad7cd86eb82915fd2634
tree462e30cb64cf066c1d13cd98eb0ea502115bafda
parentedaafc288dc92c41fa6141f38d51a97308ef7a7c
parentcf641e82b957b849ce0368aad3d6ae59f1cb1440
Merge branch 'sched_skb_free_defer'

Eric Dumazet says:

====================
net_sched: defer skb freeing while changing qdiscs

qdiscs/classes are changed under RTNL protection and often
while blocking BH and root qdisc spinlock.

When lots of skbs need to be dropped, we free
them under these locks causing TX/RX freezes,
and more generally latency spikes.

I saw spikes of 50+ ms on quite fast hardware...

This patch series adds a simple queue protected by RTNL
where skbs can be placed until RTNL is released.

Note that this might also serve in the future for optional
reinjection of packets when a qdisc is replaced.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>