summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorclaudio <>2024-07-30 13:28:27 +0000
committerclaudio <>2024-07-30 13:28:27 +0000
commitea51d67aadf6bac6328d485fa936685da3bbba4f (patch)
treeb1b8ef3e7ff8094c9d28cf90aa72a8a2382961aa
parentfcc5d7954d2e25cbccd05a1e5be2f74cca097273 (diff)
downloadopenbsd-ea51d67aadf6bac6328d485fa936685da3bbba4f.tar.gz
openbsd-ea51d67aadf6bac6328d485fa936685da3bbba4f.tar.bz2
openbsd-ea51d67aadf6bac6328d485fa936685da3bbba4f.zip
sched_yield() is not strong enough to overflow the recv buffer on some
systems. Use a proper sleep using usleep(100) instead.
-rw-r--r--src/regress/lib/libc/sys/t_sendrecv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/regress/lib/libc/sys/t_sendrecv.c b/src/regress/lib/libc/sys/t_sendrecv.c
index ae6425f40d..178d9338b8 100644
--- a/src/regress/lib/libc/sys/t_sendrecv.c
+++ b/src/regress/lib/libc/sys/t_sendrecv.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: t_sendrecv.c,v 1.3 2021/12/13 16:56:48 deraadt Exp $ */ 1/* $OpenBSD: t_sendrecv.c,v 1.4 2024/07/30 13:28:27 claudio Exp $ */
2/* $NetBSD: t_sendrecv.c,v 1.8 2021/03/28 17:30:01 christos Exp $ */ 2/* $NetBSD: t_sendrecv.c,v 1.8 2021/03/28 17:30:01 christos Exp $ */
3 3
4/*- 4/*-
@@ -97,7 +97,7 @@ receiver(int sd)
97 if (p.seq != seq) 97 if (p.seq != seq)
98 printf("%ju != %ju\n", p.seq, seq); 98 printf("%ju != %ju\n", p.seq, seq);
99 if (seq % 10 == 0) 99 if (seq % 10 == 0)
100 sched_yield(); 100 usleep(100);
101 seq = p.seq + 1; 101 seq = p.seq + 1;
102 } 102 }
103// printf("<<%zd %d %ju\n", n, errno, seq); 103// printf("<<%zd %d %ju\n", n, errno, seq);