2012-05-26 17:46:59 +00:00
|
|
|
abi-variants := 32 64
|
|
|
|
abi-32-condition := __WORDSIZE == 32
|
|
|
|
abi-64-condition := __WORDSIZE == 64
|
2011-12-22 18:22:50 +00:00
|
|
|
|
2004-04-18 02:37:56 +00:00
|
|
|
ifeq ($(subdir),rt)
|
|
|
|
librt-routines += rt-sysdep
|
2016-08-17 12:57:00 +00:00
|
|
|
librt-shared-only-routines += rt-sysdep
|
2004-04-18 02:37:56 +00:00
|
|
|
endif
|
2005-12-22 05:18:34 +00:00
|
|
|
|
|
|
|
ifeq ($(subdir),stdlib)
|
|
|
|
gen-as-const-headers += ucontext_i.sym
|
|
|
|
endif
|
2009-01-08 00:28:23 +00:00
|
|
|
|
2014-06-26 16:31:11 +00:00
|
|
|
ifeq ($(subdir),nptl)
|
2016-12-20 14:12:48 +00:00
|
|
|
elision-CFLAGS = -mhtm -msoft-float
|
2014-06-26 16:31:11 +00:00
|
|
|
CFLAGS-elision-lock.c = $(elision-CFLAGS)
|
|
|
|
CFLAGS-elision-timed.c = $(elision-CFLAGS)
|
|
|
|
CFLAGS-elision-trylock.c = $(elision-CFLAGS)
|
|
|
|
CFLAGS-elision-unlock.c = $(elision-CFLAGS)
|
|
|
|
endif
|
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 14:27:25 +00:00
|
|
|
|
|
|
|
ifeq ($(subdir),misc)
|
|
|
|
tests += tst-ptrace-singleblock
|
|
|
|
endif
|