Commit Graph

7 Commits

Author SHA1 Message Date
falkTX 365b7e3f05
Cleanup around linux futex, apply EINTR case for timed waits
Signed-off-by: falkTX <falktx@falktx.com>
2021-04-14 17:05:28 +01:00
chzchzchz 01f0dabd14 JackLinuxFutex: treat maximum TimedWait() as Wait() and retry on EINTR
FUTEX_WAIT may be interrupted by a signal and return EINTR. If a client
process takes a signal while on the futex, the jack client may error out
with no way to recover despite the signal being safe. Instead, retry if
errno is set to EINTR.
2021-04-14 16:20:02 +01:00
Khem Raj 57aa8ad346 Use SYS_futex instead of __NR_futex
SYS_futex is expected from system C library.
in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
rv32 is using 64bit time_t from get go unlike other 32bit architectures
in glibc, therefore it wont have NR_futex defined but just NR_futex_time64
this aliases it to NR_futex so that SYS_futex is then defined for rv32

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-27 17:55:38 +01:00
Filipe Coelho 59550f67ee
Fix client UUID gen, and some warnings (#440)
* Fix generation of client uuid

Signed-off-by: falkTX <falktx@falktx.com>

* Remove all client properties when removed; Cleanup a few things

Signed-off-by: falkTX <falktx@falktx.com>

* Make all uuid function arguments use jack_uuid_t type; Fix warnings

Signed-off-by: falkTX <falktx@falktx.com>

* Rework uuids to never be int, more cleanup

Signed-off-by: falkTX <falktx@falktx.com>
2019-03-18 08:33:50 +01:00
falkTX cc8576a7ab Check mmap() against MAP_FAILED
Fixes #338
2018-04-05 10:04:18 +02:00
Cédric Schieli 5d89eba8c7 Secure promiscuous mode for linux futexes
Adjusts the permissions of linux futexes when promiscuous mode is enabled.
2017-03-18 14:27:34 +01:00
falkTX 112b6bdf39 Use Linux futex as JackSynchro
Includes optimizations for internal clients, but not enabled yet.
2017-03-07 15:16:50 +01:00