diff options
author | 2017-01-09 15:49:13 -0500 | |
---|---|---|
committer | 2017-01-09 15:49:13 -0500 | |
commit | 9f2f27a9a518cdcd724bd360a1e25a10e7cd2f82 (patch) | |
tree | 23bd866126b5115cf4a14541f7700117a38efc29 /tools/perf/scripts/python/call-graph-from-postgresql.py | |
parent | Merge tag 'rxrpc-rewrite-20170109' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs (diff) | |
parent | net: for rate-limited ICMP replies save one atomic operation (diff) | |
download | linux-dev-9f2f27a9a518cdcd724bd360a1e25a10e7cd2f82.tar.xz linux-dev-9f2f27a9a518cdcd724bd360a1e25a10e7cd2f82.zip |
Merge branch 'icmp-reply-optimize'
Jesper Dangaard Brouer says:
====================
net: optimize ICMP-reply code path
This patchset is optimizing the ICMP-reply code path, for ICMP packets
that gets rate limited. A remote party can easily trigger this code
path by sending packets to port number with no listening service.
Generally the patchset moves the sysctl_icmp_msgs_per_sec ratelimit
checking to earlier in the code path and removes an allocation.
Use-case: The specific case I experienced this being a bottleneck is,
sending UDP packets to a port with no listener, which obviously result
in kernel replying with ICMP Destination Unreachable (type:3), Port
Unreachable (code:3), which cause the bottleneck.
After Eric and Paolo optimized the UDP socket code, the kernels PPS
processing capabilities is lower for no-listen ports, than normal UDP
sockets. This is bad for capacity planning when restarting a service.
UDP no-listen benchmark 8xCPUs using pktgen_sample04_many_flows.sh:
Baseline: 6.6 Mpps
Patch: 14.7 Mpps
Driver mlx5 at 50Gbit/s.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools/perf/scripts/python/call-graph-from-postgresql.py')
0 files changed, 0 insertions, 0 deletions