summaryrefslogtreecommitdiff
path: root/src/lib/libc/stdlib/labs.3
diff options
context:
space:
mode:
authordlg <>2025-08-04 01:44:33 +0000
committerdlg <>2025-08-04 01:44:33 +0000
commit97f291299e43eb39dd2ecdc18098d938d467dac6 (patch)
tree062fcd4cb2756c0bc552d938b5727afb2e443123 /src/lib/libc/stdlib/labs.3
parent7037d4c7b0d5603ef79bf7e7f1b33c2cbbce89f2 (diff)
downloadopenbsd-97f291299e43eb39dd2ecdc18098d938d467dac6.tar.gz
openbsd-97f291299e43eb39dd2ecdc18098d938d467dac6.tar.bz2
openbsd-97f291299e43eb39dd2ecdc18098d938d467dac6.zip
replace the flockfile backend with a per FILE recursive mutex.
the flockfile implementation in thread/rthread_file.c used an external lock, and associated it with the relevant FILE * as needed. this isn't great for a lot of reasons, complexity being the big one, but the straw that broke the camels back is that it uses a single spinlock to coordinate all of this, which in turn generates a lot of sched_yield syscalls. this avoids all the code complexity and the spinlock by just embedding a small __rctmx in every FILE. tested by and ok tb@ jca@ ok claudio@
Diffstat (limited to 'src/lib/libc/stdlib/labs.3')
0 files changed, 0 insertions, 0 deletions