A glance through the manual pages indicates that the _umtx_op APIs are much more complicated than what Haiku has (and maybe even more complicated that Linux futex, but I’m not an expert in either.)
We do implement some FreeBSD APIs in userspace, but the underlying implementations often differ greatly from what the BSDs do, and furthermore we only implement such things when the POSIX APIs do not suffice in some area.
Given that Haiku already adopts some FreeBSD APIs, I’m curious whether _umtx_op was considered for the userspace mutex support.
I don’t think it was.
A glance through the manual pages indicates that the
_umtx_opAPIs are much more complicated than what Haiku has (and maybe even more complicated that Linux futex, but I’m not an expert in either.)We do implement some FreeBSD APIs in userspace, but the underlying implementations often differ greatly from what the BSDs do, and furthermore we only implement such things when the POSIX APIs do not suffice in some area.