On 7/6/15 5:18 AM, Eric Dumazet wrote:
Like act_gact, act_mirred can be lockless in packet processing
1) Use percpu stats
2) update lastuse only every clock tick to avoid false sharing
3) use rcu to protect tcfm_dev
4) Remove spinlock usage, as it is no longer needed.
Next step : add multi queu
ifb patch seems to work very well ;)
# tc -s -d qd sh dev ifb10
qdisc mq 1: root
Sent 190952 bytes 31798616 pkt (dropped 0, overlimits 0 requeues 0)
backlog 29460b 491p requeues 0
qdisc netem 8002: parent 1:1 limit 10 delay 3.0ms
Sent 238320936 bytes 3971225 pkt (dropped 0, overlimits 0
On Mon, Jul 6, 2015 at 2:53 PM, Jamal Hadi Salim wrote:
> cant wait for the multi queue ifb.
>
Yeah, me too ;)
Do not try this on a production host :
ip link add ifb10 numtxqueues 100 type ifb
[284151.950695] kernel BUG at /build/buildd/linux-3.13.0/net/core/dev.c:5868!
[284151.950762] in
On 07/06/15 08:18, Eric Dumazet wrote:
Like act_gact, act_mirred can be lockless in packet processing
1) Use percpu stats
2) update lastuse only every clock tick to avoid false sharing
3) use rcu to protect tcfm_dev
4) Remove spinlock usage, as it is no longer needed.
Next step : add multi queu
Like act_gact, act_mirred can be lockless in packet processing
1) Use percpu stats
2) update lastuse only every clock tick to avoid false sharing
3) use rcu to protect tcfm_dev
4) Remove spinlock usage, as it is no longer needed.
Next step : add multi queue capability to ifb device
Signed-off-by