diff options
author | Florian Weimer <fweimer@redhat.com> | 2021-12-09 09:49:32 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2021-12-09 09:49:32 +0100 |
commit | c901c3e764d7c7079f006b4e21e877d5036eb4f5 (patch) | |
tree | ed5a2defd04179a354f4581b0b94b50b6634751e /NEWS | |
parent | e3e589829d16af9f7e73c7b70f74f3c5d5003e45 (diff) | |
download | glibc-c901c3e764d7c7079f006b4e21e877d5036eb4f5.tar.gz glibc-c901c3e764d7c7079f006b4e21e877d5036eb4f5.tar.xz glibc-c901c3e764d7c7079f006b4e21e877d5036eb4f5.zip |
nptl: Add public rseq symbols and <sys/rseq.h>
The relationship between the thread pointer and the rseq area is made explicit. The constant offset can be used by JIT compilers to optimize rseq access (e.g., for really fast sched_getcpu). Extensibility is provided through __rseq_size and __rseq_flags. (In the future, the kernel could request a different rseq size via the auxiliary vector.) Co-Authored-By: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/NEWS b/NEWS index 1398cf2e87..8744a92532 100644 --- a/NEWS +++ b/NEWS @@ -68,6 +68,17 @@ Major new features: to be used by compilers for optimizing usage of 'memcmp' when its return value is only used for its boolean status. +* Support for automatically registering threads with the Linux rseq + system call has been added. This system call is implemented starting + from Linux 4.18. The Restartable Sequences ABI accelerates user-space + operations on per-cpu data. It allows user-space to perform updates + on per-cpu data without requiring heavy-weight atomic operations. + Automatically registering threads allows all libraries, including + libc, to make immediate use of the rseq support by using the + documented ABI, via the __rseq_flags, __rseq_offset, and __rseq_size + variables. The GNU C Library manual has details on integration of + Restartable Sequences. + Deprecated and removed features, and other changes affecting compatibility: * The r_version update in the debugger interface makes the glibc binary |