glibc/sysdeps/unix/sysv/linux/s390
Stefan Liebler b08a6a0dea S390: Sync ptrace.h with kernel. [BZ #21539]
This patch removes PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS
and PTRACE_SETFPREGS as these requests does not exist on s390 kernel.

But the kernel has support for PTRACE_SINGLEBLOCK,
PTRACE_SECCOMP_GET_FILTER, PTRACE_PEEKUSR_AREA, PTRACE_POKEUSR_AREA,
PTRACE_GET_LAST_BREAK, PTRACE_ENABLE_TE, PTRACE_DISABLE_TE and
PTRACE_TE_ABORT_RAND.  Thus those are defined now.

The current kernel s390 specific ptrace.h file also defines
PTRACE_PEEKTEXT_AREA, PTRACE_PEEKDATA_AREA, PTRACE_POKETEXT_AREA,
PTRACE_POKEDATA_AREA, PTRACE_PEEK_SYSTEM_CALL, PTRACE_POKE_SYSTEM_CALL
and PTRACE_PROT, but those requests are not supported.
Thus those defines are skipped in glibc ptrace.h.

There were old includes of ptrace.h in sysdeps/s390/fpu/fesetenv.c.
The ptrace feature isn't used there anymore, thus I removed the includes.

Before this patch, <glibc>/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
uses ptrace-request 12 for PTRACE_GETREGS,
but <kernel>/include/uapi/linux/ptrace.h uses 12 for PTRACE_SINGLEBLOCK.

The s390 kernel has never had support for PTRACE_GETREGS!
Thus glibc ptrace.h is adjusted to match kernel ptrace.h.

The new s390 specific test ensures, that PTRACE_SINGLEBLOCK defined
in glibc works as expected.  If the kernel would interpret it as
PTRACE_GETREGS, then the testcase will not make any progress
and will time out.

ChangeLog:

	[BZ #21539]
	* NEWS: Mention s390 ptrace request changes.
	* sysdeps/unix/sysv/linux/s390/sys/ptrace.h
	(PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS,
	PTRACE_SETFPREGS): Remove enum constant.
	(PT_GETREGS, PT_SETREGS, PT_GETFPREGS, T_SETFPREGS):
	Remove defines.
	(PTRACE_SINGLEBLOCK): New enum constant.
	(PT_STEPBLOCK): New define.
	(PTRACE_PEEKUSR_AREA, PTRACE_POKEUSR_AREA,
	PTRACE_GET_LAST_BREAK, PTRACE_ENABLE_TE, PTRACE_DISABLE_TE,
	PTRACE_TE_ABORT_RAND): New enum constant and define.
	* sysdeps/s390/fpu/fesetenv.c: Remove ptrace.h includes.
	* sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c:
	New file.
	* sysdeps/unix/sysv/linux/s390/Makefile: Add test.
2017-06-19 16:27:25 +02:00
..
bits Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
fpu Implement accurate fma. 2010-10-13 22:27:03 -04:00
s390-32 S390: Fix build with gcc configured with --enable-default-pie. [BZ #21537] 2017-06-19 11:08:58 +02:00
s390-64 s390: optimize syscall function 2017-06-19 10:59:40 +02:00
sys S390: Sync ptrace.h with kernel. [BZ #21539] 2017-06-19 16:27:25 +02:00
arch-fork.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
brk.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
configure Move architecture cases out of sysdeps/unix/sysv/linux/configure.ac. 2014-06-24 20:53:03 +00:00
configure.ac Move architecture cases out of sysdeps/unix/sysv/linux/configure.ac. 2014-06-24 20:53:03 +00:00
dl-cache.h
dl-procinfo.h Add include guards to dl-procinfo.h 2017-06-07 11:11:38 +05:30
elision-conf.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
elision-conf.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
elision-lock.c S390: Adjust lock elision code after review. 2017-01-20 09:53:04 +01:00
elision-timed.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
elision-trylock.c S390: Adjust lock elision code after review. 2017-01-20 09:53:04 +01:00
elision-unlock.c S390: Adjust lock elision code after review. 2017-01-20 09:53:04 +01:00
force-elision.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
htm.h S390: Adjust lock elision code after review. 2017-01-20 09:53:04 +01:00
Implies NPTL is no longer an add-on! 2014-07-07 09:29:06 -07:00
init-first.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
jmp-unwind.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
kernel-features.h Consolidate Linux send implementation 2017-03-09 15:22:06 +01:00
ldconfig.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
ldd-rewrite.sed
libanl.abilist Simplify the abilist format 2015-11-06 13:58:53 +01:00
libc-vdso.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
localplt.data ld.so: Remove __libc_memalign 2016-11-30 16:23:58 +01:00
longjmp_chk.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
lowlevellock.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
Makefile S390: Sync ptrace.h with kernel. [BZ #21539] 2017-06-19 16:27:25 +02:00
mmap_internal.h Consolidate Linux mmap implementation (BZ#21270) 2017-04-12 11:04:28 -03:00
nldbl-abi.h
opensock.c * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers): 2007-11-23 15:19:41 +00:00
pt-longjmp.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
pt-vfork.S S390: Consolidate NPTL/non versions of vfork 2014-06-26 09:30:52 -07:00
pthread_mutex_cond_lock.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
pthread_mutex_lock.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
pthread_mutex_timedlock.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
pthread_mutex_trylock.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
readelflib.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
rt-sysdep.S
sa_len.c Clean up __libc_sa_len helper. 2013-08-27 10:34:16 -07:00
semtimedop.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigcontextinfo.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sysconf.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
system.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
tst-ptrace-singleblock.c S390: Sync ptrace.h with kernel. [BZ #21539] 2017-06-19 16:27:25 +02:00
ucontext_i.sym S/390: Revert the jmp_buf/ucontext_t ABI change. 2014-07-31 20:04:54 +02:00
Versions Move remaining S390 code out of nptl/. 2014-06-26 09:31:11 -07:00