glibc/sysdeps
Tulio Magno Quites Machado Filho 4612268a0a powerpc: Fix syscalls during early process initialization [BZ #22685]
The tunables framework needs to execute syscall early in process
initialization, before the TCB is available for consumption.  This
behavior conflicts with powerpc{|64|64le}'s lock elision code, that
checks the TCB before trying to abort transactions immediately before
executing a syscall.

This patch adds a powerpc-specific implementation of __access_noerrno
that does not abort transactions before the executing syscall.

Tested on powerpc{|64|64le}.

	[BZ #22685]
	* sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION_IMPL): Renamed
	from ABORT_TRANSACTION.
	(ABORT_TRANSACTION): Redirect to ABORT_TRANSACTION_IMPL.
	* sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION,
	ABORT_TRANSACTION_IMPL): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/not-errno.h: New file.  Reuse
	Linux code, but remove the code that aborts transactions.

Signed-off-by: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Tested-by: Aurelien Jarno <aurelien@aurel32.net>
2018-01-19 09:50:09 -02:00
..
aarch64 aarch64: fix static pie enabled libc when main is in a shared library 2018-01-12 18:10:03 +00:00
alpha
arm
generic generic if_ether.h: Fix build 2018-01-19 01:51:10 +01:00
gnu
hppa Fix backtrace for hppa (bug 22719). 2018-01-17 13:31:47 +00:00
i386
ia64
ieee754
init_array
m68k
mach
microblaze
mips
nios2
nptl
posix
powerpc powerpc: Fix syscalls during early process initialization [BZ #22685] 2018-01-19 09:50:09 -02:00
pthread
s390 Fix s390 linknamespace fallout of bug 22702 patch. 2018-01-12 00:12:57 +00:00
sh
sparc
tile
unix powerpc: Fix syscalls during early process initialization [BZ #22685] 2018-01-19 09:50:09 -02:00
wordsize-32
wordsize-64
x86
x86_64 x86-64: Properly align La_x86_64_retval to VEC_SIZE [BZ #22715] 2018-01-17 04:32:04 -08:00