cosmopolitan/tool
Justine Tunney e939659b70
Fix ordering of pthread_create(pthread_t *thread)
This change fixes a bug where signal_latency_async_test would flake less
than 1/1000 of the time. What was happening was pthread_kill(sender_thr)
would return EFAULT. This was because pthread_create() was not returning
the thread object pointer until after clone() had been called. So it was
actually possible for the main thread to stall after calling clone() and
during that time the receiver would launch and receive a signal from the
sender thread, and then fail when it tried to send a pong. I thought I'd
use a barrier at first, in the test, to synchronize thread creation, but
I firmly believe that pthread_create() was to blame and now that's fixed
2025-01-03 17:34:29 -08:00
..
args Invent new cosmo_args() api 2024-11-13 01:19:57 -08:00
build Build tool for hunting down flakes 2024-12-24 11:36:16 -08:00
cosmocc Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
curl Remove .internal from more header filenames 2024-08-04 12:52:25 -07:00
decode Support merging many .a files into one .a file 2024-09-05 19:28:14 -07:00
emacs Make Emacs load 2x faster 2024-08-23 20:08:05 -07:00
hello Write more runtime tests and fix bugs 2025-01-01 22:25:22 -08:00
lambda Update Musl Libc code 2024-07-30 22:51:29 -07:00
net Eliminate cyclic locks in runtime 2024-12-16 22:25:12 -08:00
plinko Make improvements 2024-09-01 01:27:47 -07:00
scripts Fix ordering of pthread_create(pthread_t *thread) 2025-01-03 17:34:29 -08:00
viz Improve Windows sleep accuracy from 15ms to 15µs 2024-12-06 23:03:57 -08:00
zsh Stop using .com extension in monorepo 2024-03-03 03:12:19 -08:00
BUILD.mk more modeline errata (#1019) 2023-12-16 23:07:10 -05:00