libthread_xu errno issue fix

Alex Hornung ahornung at gmail.com
Wed Apr 8 11:59:46 PDT 2009


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






More information about the Submit mailing list