-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement waitable_atomic for FreeBSD #1607
base: master
Are you sure you want to change the base?
Conversation
Based on the Apple implementation rewritten to use _umtx_op syscall.
Thanks for making this pull request! We just need a couple of things from you to start our consideration of the PR. Can you please:
|
Thanks for your quick response. |
Sorry for the delay in writing back. My team owns this code and we have been debating internally what to do with this PR. On the one hand, we appreciate the effort to upstream support for other platforms. But on the other, we are hesitant to accept maintenance of code that isn't executed in our CI system and that we have limited ability to test. Our preference would probably be for you to maintain this as an out of tree patch. How much of a hardship would that be for you? As for the code, I wanted to provide some feedback to ensure that you have the best version, regardless of whether it gets merged or maintained out-of-tree. Based on my reading of https://man.freebsd.org/cgi/man.cgi?query=_umtx_op&sektion=2&n=1, I think it would be better to base this off of the linux version rather than the apple version of the code. It seems like |
Thanks for the answer. I understand the suggestion for the implementation with absolute time. I will take a look at that in the near future. Maintaining the patches out of tree is doable. As I'm doing it for quite some time now. I just thought it would be nice to upstream some of this code. As it is a working port of MongoDB on a popular posix OS. Of course your team is in the lead and I'm happy with what you decide is possible. |
Similar to the Linux implementation instead of the MacOS version.
Based on the Apple implementation rewritten to use _umtx_op syscall.