Hi, Simon Schubert found a bug today which causes an undesired value in errno in a threaded context if a umtx syscall also returns an error.
Fix the problem by replacing all calls to utmx_sleep and utmx_wakeup with calls to two new functions: _umtx_sleep_err and _umtx_wakeup_err. These new functions perform the respective umtx_sleep and umtx_wakeup syscall without affecting errno as the normal syscall path would. Here is the fix: http://gitweb.dragonflybsd.org/~alexh/dragonfly.git/commit/4de68a6eeb918a2f7faabcbb9b408f8c90712eba Hope someone can comment on it and possibly commit it. Sincerely, Alex
