diff options
author | Test_User <hax@andrewyu.org> | 2024-06-19 08:48:20 -0400 |
---|---|---|
committer | Test_User <hax@andrewyu.org> | 2024-06-19 08:48:20 -0400 |
commit | ab45d828cea484f72ec8573a29524894eb9b24ac (patch) | |
tree | d96114631cd6d9054ca65d76a3dda32a016e7a03 /mutex.h | |
parent | c3d40c8d4671c59414c737b00cc55eb5d44992c9 (diff) | |
download | haxircd-ab45d828cea484f72ec8573a29524894eb9b24ac.tar.gz haxircd-ab45d828cea484f72ec8573a29524894eb9b24ac.zip |
Mark futexes as private since it's all same-process, fix timeout on plaintext connections
Diffstat (limited to 'mutex.h')
-rw-r--r-- | mutex.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -44,12 +44,12 @@ inline int mutex_init(uint32_t *futex) { inline void mutex_lock(uint32_t *futex) { uint32_t val; while ((val = __sync_lock_test_and_set(futex, 1))) - syscall(SYS_futex, futex, FUTEX_WAIT, val, 0, 0, 0); + syscall(SYS_futex, futex, FUTEX_PRIVATE_FLAG | FUTEX_WAIT, val, 0, 0, 0); } inline void mutex_unlock(uint32_t *futex) { __sync_lock_release(futex); - syscall(SYS_futex, futex, FUTEX_WAKE, 1, 0, 0, 0); + syscall(SYS_futex, futex, FUTEX_PRIVATE_FLAG | FUTEX_WAKE, 1, 0, 0, 0); } inline void mutex_destroy(uint32_t *futex) { |