pktgen: speedup fragmented skbs
authorEric Dumazet <eric.dumazet@gmail.com>
Tue, 25 Jan 2011 21:26:05 +0000 (13:26 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 Jan 2011 21:26:05 +0000 (13:26 -0800)
commit26ad787962ef84677a48c56039d3c9769b84f847
tree46ca79b2bb1a5723ac60a0138d624efdf1e4d3e3
parent672bda337060fa2ff99866a6ebfa3ae036f8b23b
pktgen: speedup fragmented skbs

We spend lot of time clearing pages in pktgen.
(Or not clearing them on ipv6 and leaking kernel memory)

Since we dont modify them, we can use one zeroed page, and get
references on it. This page can use NUMA affinity as well.

Define pktgen_finalize_skb() helper, used both in ipv4 and ipv6

Results using skbs with one frag :

Before patch :

Result: OK: 608980458(c608978520+d1938) nsec, 1000000000
(100byte,1frags)
  1642088pps 1313Mb/sec (1313670400bps) errors: 0

After patch :

Result: OK: 345285014(c345283891+d1123) nsec, 1000000000
(100byte,1frags)
  2896158pps 2316Mb/sec (2316926400bps) errors: 0

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/pktgen.c