diff options
author | 2022-05-11 17:06:11 -0700 | |
---|---|---|
committer | 2022-05-12 16:52:18 -0700 | |
commit | ec8cb4f617a23700d37018d249e3b05149d44a38 (patch) | |
tree | 7d2bdd36a14880cafe9595bf3317696342ea33b9 /tools/perf/scripts/python/export-to-sqlite.py | |
parent | net: inet: Retire port only listening_hash (diff) | |
download | linux-dev-ec8cb4f617a23700d37018d249e3b05149d44a38.tar.xz linux-dev-ec8cb4f617a23700d37018d249e3b05149d44a38.zip |
net: selftests: Stress reuseport listen
This patch adds a test that has 300 VIPs listening on port 443.
Each VIP:443 will have 80 listening socks by using SO_REUSEPORT.
Thus, it will have 24000 listening socks.
Before removing the port only listening_hash, all socks will be in the
same port 443 bucket and inet_reuseport_add_sock() spends much time to
walk through the bucket. After removing the port only listening_hash
and move all usage to the port+addr lhash2, each bucket in the
ideal case has 80 sk which is much smaller than before.
Here is the test result from a qemu:
Before: listen 24000 socks took 210.210485362 (~210s)
After: listen 24000 socks took 0.207173 (~210ms)
Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions