I'm took a brief look and left confused. The list implementation seems completely bog standard with no special code for synchronization whatsoever. I don't see any counter and the rseq syscall seems unused except for feature detection. I don't think that's a viable replacement for any low level code.
Comments
I'm took a brief look and left confused. The list implementation seems completely bog standard with no special code for synchronization whatsoever. I don't see any counter and the rseq syscall seems unused except for feature detection. I don't think that's a viable replacement for any low level code.
The low level interface is documented at https://github.com/compudj/librseq/blob/master/include/rseq/..., the list is just an internal implementation detail.
The syscall these days is invoked by libc not the program; libc provides access to some symbols that let the program execute rseqs as well.