Restartable sequences in glibc
Restartable sequences in glibc
Posted Feb 2, 2022 4:06 UTC (Wed) by foom (subscriber, #14868)In reply to: Restartable sequences in glibc by NYKevin
Parent article: Restartable sequences in glibc
glibc plans to use rseq internally to do useful things like speed up malloc, so it needs to do rseq registration regardless of whether anyone else wants to use it. There doesn't seem to be much point in creating a mechanism to share registration duties, if libc will always "win" anyways.
As far as not exposing any user space abi: if you don't, every user would then need to make a syscall to retrieve the rseq area's location separately per thread? And presumably then cache it in a tls variable for performance? That seems a bit silly and wasteful, when it's easy enough to just make a constant thread offset available in user space to anyone who needs it.
