File 2182-kernel-esock-test-Add-send-bench-test-case.patch of Package erlang
From a6cc0b8470c2ade317c9d7dda559606d9e1b4ea8 Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Tue, 8 Apr 2025 17:37:26 +0200
Subject: [PATCH 02/10] [kernel|esock|test] Add send bench test case
---
lib/kernel/test/socket_traffic_SUITE.erl | 31 ++++++++++++++++++------
1 file changed, 24 insertions(+), 7 deletions(-)
diff --git a/lib/kernel/test/socket_traffic_SUITE.erl b/lib/kernel/test/socket_traffic_SUITE.erl
index 7ae3c19c57..aef177049c 100644
--- a/lib/kernel/test/socket_traffic_SUITE.erl
+++ b/lib/kernel/test/socket_traffic_SUITE.erl
@@ -152,7 +152,8 @@
traffic_ping_pong_medium_sendmsg_and_recvmsg_udpL/1,
%% *** Bench ***
- traffic_bench_sendv_and_recv_tcp4/1
+ traffic_bench_sendv_and_recv_tcp4/1,
+ traffic_bench_send_and_recv_tcp4/1
]).
@@ -262,12 +263,12 @@ traffic_ping_pong_cases() ->
traffic_bench_cases() ->
[
- traffic_bench_sendv_and_recv_tcp4%% ,
- %% traffic_bench_send_recv_tcp4,
- %% traffic_bench_sendv_recv_tcp6,
- %% traffic_bench_send_recv_tcp6,
- %% traffic_bench_sendv_recv_tcpL,
- %% traffic_bench_send_recv_tcpL
+ traffic_bench_sendv_and_recv_tcp4,
+ traffic_bench_send_and_recv_tcp4 %%,
+ %% traffic_bench_sendv_and_recv_tcp6,
+ %% traffic_bench_send_and_recv_tcp6,
+ %% traffic_bench_sendv_and_recv_tcpL,
+ %% traffic_bench_send_and_recv_tcpL
].
traffic_pp_send_recv_cases() ->
@@ -7077,6 +7078,22 @@ traffic_bench_sendv_and_recv_tcp4(Config) when is_list(Config) ->
do_traffic_bench_send_and_recv(InitState)
end).
+traffic_bench_send_and_recv_tcp4(Config) when is_list(Config) ->
+ ?TT(?MINS(2)), %% Test *should* run for 60 secs
+ IOV = tb_iov(),
+ Send = fun(S, Data) when is_list(Data) ->
+ socket:send(S, iolist_to_binary(Data))
+ end,
+ tc_try(?FUNCTION_NAME,
+ fun() -> has_support_ipv4() end,
+ fun() ->
+ InitState = #{domain => inet,
+ send => Send,
+ iov => IOV,
+ run_time => ?MINS(1)},
+ do_traffic_bench_send_and_recv(InitState)
+ end).
+
do_traffic_bench_send_and_recv(#{run_time := RTime} = InitState) ->
?SEV_IPRINT("[ctrl] start server"),
{PortNumber, Server} = tb_server_start(InitState),
--
2.43.0