File 2183-kernel-esock-test-Add-sendv-tcp6-bench-test-case.patch of Package erlang

From 15bd86d72fe68748a59796e1390ae55301c84785 Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Tue, 8 Apr 2025 17:43:39 +0200
Subject: [PATCH 03/10] [kernel|esock|test] Add sendv (tcp6) bench test case

---
 lib/kernel/test/socket_traffic_SUITE.erl | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/lib/kernel/test/socket_traffic_SUITE.erl b/lib/kernel/test/socket_traffic_SUITE.erl
index aef177049c..15684a6266 100644
--- a/lib/kernel/test/socket_traffic_SUITE.erl
+++ b/lib/kernel/test/socket_traffic_SUITE.erl
@@ -153,7 +153,8 @@
 
          %% *** Bench ***
          traffic_bench_sendv_and_recv_tcp4/1,
-         traffic_bench_send_and_recv_tcp4/1
+         traffic_bench_send_and_recv_tcp4/1,
+         traffic_bench_sendv_and_recv_tcp6/1
         ]).
 
 
@@ -264,8 +265,8 @@ traffic_ping_pong_cases() ->
 traffic_bench_cases() ->
     [
      traffic_bench_sendv_and_recv_tcp4,
-     traffic_bench_send_and_recv_tcp4 %%,
-     %% traffic_bench_sendv_and_recv_tcp6,
+     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
@@ -7094,6 +7095,22 @@ traffic_bench_send_and_recv_tcp4(Config) when is_list(Config) ->
                    do_traffic_bench_send_and_recv(InitState)
            end).
 
+traffic_bench_sendv_and_recv_tcp6(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:sendv(S, Data)
+           end,
+    tc_try(?FUNCTION_NAME,
+           fun() -> has_support_ipv6() end,
+           fun() ->
+                   InitState = #{domain   => inet6,
+                                 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

openSUSE Build Service is sponsored by