arm: Re-enable PI futex support for ARM kernels >= 3.14.3

ARM linux kernels before 3.14.3 may or may not support
futex_atomic_cmpxchg_inatomic depending on the kernel configuration (e.g.
CONFIG_CPU_USE_DOMAINS && CONFIG_SMP configuration was not supported)

Starting with 3.14.3 the linux kernel unconditionally enables support for
ARM, and this re-enables the relevant __ASSUME_* macros.

Tested on ARM both with kernels >= 3.14.3 and older kernels.

	* sysdeps/unix/sysv/linux/arm/kernel-features.h
	[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_FUTEX_LOCK_PI): Do
	not undefine.
	[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_REQUEUE_PI):
	Likewise.
	[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_SET_ROBUST_LIST):
	Likewise.
This commit is contained in:
Gratian Crisan 2014-10-27 22:45:43 +00:00 committed by Joseph Myers
parent a4b3624d20
commit 03d41216fe
2 changed files with 16 additions and 4 deletions

View File

@ -1,3 +1,13 @@
2014-10-27 Gratian Crisan <gratian.crisan@ni.com>
* sysdeps/unix/sysv/linux/arm/kernel-features.h
[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_FUTEX_LOCK_PI): Do
not undefine.
[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_REQUEUE_PI):
Likewise.
[__LINUX_KERNEL_VERSION >= 0x030E03] (__ASSUME_SET_ROBUST_LIST):
Likewise.
2014-10-27 Joseph Myers <joseph@codesourcery.com>
[BZ #14138]

View File

@ -34,9 +34,11 @@
#include_next <kernel-features.h>
/* The ARM kernel may or may not support
/* The ARM kernel before 3.14.3 may or may not support
futex_atomic_cmpxchg_inatomic, depending on kernel
configuration. */
#undef __ASSUME_FUTEX_LOCK_PI
#undef __ASSUME_REQUEUE_PI
#undef __ASSUME_SET_ROBUST_LIST
#if __LINUX_KERNEL_VERSION < 0x030E03
# undef __ASSUME_FUTEX_LOCK_PI
# undef __ASSUME_REQUEUE_PI
# undef __ASSUME_SET_ROBUST_LIST
#endif