glibc/sysdeps
Florian Weimer 446d22e91d Linux: Implement interfaces for memory protection keys
This adds system call wrappers for pkey_alloc, pkey_free, pkey_mprotect,
and x86-64 implementations of pkey_get and pkey_set, which abstract over
the PKRU CPU register and hide the actual number of memory protection
keys supported by the CPU.  pkey_mprotect with a -1 key is implemented
using mprotect, so it will work even if the kernel does not support the
pkey_mprotect system call.

The system call wrapers use unsigned int instead of unsigned long for
parameters, so that no special treatment for x32 is needed.  The flags
argument is currently unused, and the access rights bit mask is limited
to two bits by the current PKRU register layout anyway.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2017-12-05 15:20:35 +01:00
..
aarch64 aarch64: Avoid hidden symbols for memcpy/memmove into static binaries 2017-12-04 21:17:17 +05:30
alpha Use libm_alias_float for alpha. 2017-11-28 01:19:03 +00:00
arm Prefer https for Sourceware links 2017-11-16 11:49:26 +05:30
generic x86: Make a space in jmpbuf for shadow stack pointer 2017-11-30 04:58:01 -08:00
gnu The -Wstringop-truncation option new in GCC 8 detects common misuses 2017-11-15 17:39:59 -07:00
hppa Handle __gmon_start__ as undefined weak on hppa. 2017-12-02 14:43:28 -05:00
i386 Use libm_alias_float for i386. 2017-11-29 00:10:35 +00:00
ia64 Use libm_alias_float for ia64. 2017-11-29 17:38:35 +00:00
ieee754 Use __floor not floor in sinf. 2017-12-04 16:58:08 +00:00
init_array
m68k Use libm_alias_float for coldfire. 2017-11-30 23:52:35 +00:00
mach
microblaze nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
mips mips: Don't use MIN in dl-machine.h 2017-11-30 16:34:09 -08:00
nios2 nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
nptl nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
posix posix: Fix generic p{read,write}v buffer allocation (BZ#22457) 2017-11-24 12:16:15 -02:00
powerpc Use libm_alias_float for powerpc. 2017-12-05 00:26:26 +00:00
pthread
s390 Use libm_alias_float for s390. 2017-11-28 17:34:13 +00:00
sh nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
sparc sparc: Remove ununsed ifunc assembly macros 2017-12-01 15:48:40 -02:00
tile tile: update ca{cos,sin,tan}{,h} double ULPs 2017-12-04 12:31:20 -05:00
unix Linux: Implement interfaces for memory protection keys 2017-12-05 15:20:35 +01:00
wordsize-32
wordsize-64
x86 Add _Float64x function aliases. 2017-11-27 14:16:47 +00:00
x86_64 Use libm_alias_float for x86_64. 2017-11-29 21:25:41 +00:00