Nice! I have fond memories of studying the mechanics of futexes when PREEMPT_RT was under heavy development.
It's been a long time since I thought about the kernel futex implementation, but IIRC, one of the most interesting aspects was that the kernel would actually navigate a linked list that existed entirely in userspace. I believe this was called, or related to, robust futexes [0].
It's been a long time since I thought about the kernel futex implementation, but IIRC, one of the most interesting aspects was that the kernel would actually navigate a linked list that existed entirely in userspace. I believe this was called, or related to, robust futexes [0].
[0]: https://www.kernel.org/doc/Documentation/robust-futexes.txt