From 003cc9f66a3b30ab3cf54566a1d9cf626e573a0d Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Wed, 17 Jun 2015 19:00:17 +0000 Subject: [PATCH] futex: move fallback definitions of futex constants to xlat/ * futex.c: Move definitions of FUTEX_OP_CMP_* constants ... * xlat/futexwakecmps.in: ... here. * futex.c: Move definitions of other FUTEX_OP_* constants ... * xlat/futexwakeops.in: ... here. * futex.c: Move definitions of remaining FUTEX_* constants except FUTEX_PRIVATE_FLAG and FUTEX_CLOCK_REALTIME flags ... * xlat/futexops.in: ... here. --- futex.c | 85 +------------------------------------------ xlat/futexops.in | 50 ++++++++++++------------- xlat/futexwakecmps.in | 12 +++--- xlat/futexwakeops.in | 10 ++--- 4 files changed, 37 insertions(+), 120 deletions(-) diff --git a/futex.c b/futex.c index f59587cd..fa83f643 100644 --- a/futex.c +++ b/futex.c @@ -4,97 +4,14 @@ # include #endif -#ifndef FUTEX_WAIT -# define FUTEX_WAIT 0 -#endif -#ifndef FUTEX_WAKE -# define FUTEX_WAKE 1 -#endif -#ifndef FUTEX_FD -# define FUTEX_FD 2 -#endif -#ifndef FUTEX_REQUEUE -# define FUTEX_REQUEUE 3 -#endif -#ifndef FUTEX_CMP_REQUEUE -# define FUTEX_CMP_REQUEUE 4 -#endif -#ifndef FUTEX_WAKE_OP -# define FUTEX_WAKE_OP 5 -#endif -#ifndef FUTEX_LOCK_PI -# define FUTEX_LOCK_PI 6 -# define FUTEX_UNLOCK_PI 7 -# define FUTEX_TRYLOCK_PI 8 -#endif -#ifndef FUTEX_WAIT_BITSET -# define FUTEX_WAIT_BITSET 9 -#endif -#ifndef FUTEX_WAKE_BITSET -# define FUTEX_WAKE_BITSET 10 -#endif -#ifndef FUTEX_WAIT_REQUEUE_PI -# define FUTEX_WAIT_REQUEUE_PI 11 -#endif -#ifndef FUTEX_CMP_REQUEUE_PI -# define FUTEX_CMP_REQUEUE_PI 12 -#endif #ifndef FUTEX_PRIVATE_FLAG # define FUTEX_PRIVATE_FLAG 128 #endif #ifndef FUTEX_CLOCK_REALTIME # define FUTEX_CLOCK_REALTIME 256 #endif -#ifndef FUTEX_WAIT_PRIVATE -# define FUTEX_WAIT_PRIVATE (FUTEX_WAIT | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_WAKE_PRIVATE -# define FUTEX_WAKE_PRIVATE (FUTEX_WAKE | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_REQUEUE_PRIVATE -# define FUTEX_REQUEUE_PRIVATE (FUTEX_REQUEUE | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_CMP_REQUEUE_PRIVATE -# define FUTEX_CMP_REQUEUE_PRIVATE (FUTEX_CMP_REQUEUE | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_WAKE_OP_PRIVATE -# define FUTEX_WAKE_OP_PRIVATE (FUTEX_WAKE_OP | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_LOCK_PI_PRIVATE -# define FUTEX_LOCK_PI_PRIVATE (FUTEX_LOCK_PI | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_UNLOCK_PI_PRIVATE -# define FUTEX_UNLOCK_PI_PRIVATE (FUTEX_UNLOCK_PI | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_TRYLOCK_PI_PRIVATE -# define FUTEX_TRYLOCK_PI_PRIVATE (FUTEX_TRYLOCK_PI | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_WAIT_BITSET_PRIVATE -# define FUTEX_WAIT_BITSET_PRIVATE (FUTEX_WAIT_BITSET | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_WAKE_BITSET_PRIVATE -# define FUTEX_WAKE_BITSET_PRIVATE (FUTEX_WAKE_BITSET | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_WAIT_REQUEUE_PI_PRIVATE -# define FUTEX_WAIT_REQUEUE_PI_PRIVATE (FUTEX_WAIT_REQUEUE_PI | FUTEX_PRIVATE_FLAG) -#endif -#ifndef FUTEX_CMP_REQUEUE_PI_PRIVATE -# define FUTEX_CMP_REQUEUE_PI_PRIVATE (FUTEX_CMP_REQUEUE_PI | FUTEX_PRIVATE_FLAG) -#endif + #include "xlat/futexops.h" -#ifndef FUTEX_OP_SET -# define FUTEX_OP_SET 0 -# define FUTEX_OP_ADD 1 -# define FUTEX_OP_OR 2 -# define FUTEX_OP_ANDN 3 -# define FUTEX_OP_XOR 4 -# define FUTEX_OP_CMP_EQ 0 -# define FUTEX_OP_CMP_NE 1 -# define FUTEX_OP_CMP_LT 2 -# define FUTEX_OP_CMP_LE 3 -# define FUTEX_OP_CMP_GT 4 -# define FUTEX_OP_CMP_GE 5 -#endif #include "xlat/futexwakeops.h" #include "xlat/futexwakecmps.h" diff --git a/xlat/futexops.in b/xlat/futexops.in index 46bbc3ee..33726736 100644 --- a/xlat/futexops.in +++ b/xlat/futexops.in @@ -1,29 +1,29 @@ -FUTEX_WAIT -FUTEX_WAKE -FUTEX_FD -FUTEX_REQUEUE -FUTEX_CMP_REQUEUE -FUTEX_WAKE_OP -FUTEX_LOCK_PI -FUTEX_UNLOCK_PI -FUTEX_TRYLOCK_PI -FUTEX_WAIT_BITSET -FUTEX_WAKE_BITSET -FUTEX_WAIT_REQUEUE_PI -FUTEX_CMP_REQUEUE_PI -FUTEX_WAIT_PRIVATE -FUTEX_WAKE_PRIVATE +FUTEX_WAIT 0 +FUTEX_WAKE 1 +FUTEX_FD 2 +FUTEX_REQUEUE 3 +FUTEX_CMP_REQUEUE 4 +FUTEX_WAKE_OP 5 +FUTEX_LOCK_PI 6 +FUTEX_UNLOCK_PI 7 +FUTEX_TRYLOCK_PI 8 +FUTEX_WAIT_BITSET 9 +FUTEX_WAKE_BITSET 10 +FUTEX_WAIT_REQUEUE_PI 11 +FUTEX_CMP_REQUEUE_PI 12 +FUTEX_WAIT_PRIVATE (FUTEX_WAIT | FUTEX_PRIVATE_FLAG) +FUTEX_WAKE_PRIVATE (FUTEX_WAKE | FUTEX_PRIVATE_FLAG) FUTEX_FD|FUTEX_PRIVATE_FLAG -FUTEX_REQUEUE_PRIVATE -FUTEX_CMP_REQUEUE_PRIVATE -FUTEX_WAKE_OP_PRIVATE -FUTEX_LOCK_PI_PRIVATE -FUTEX_UNLOCK_PI_PRIVATE -FUTEX_TRYLOCK_PI_PRIVATE -FUTEX_WAIT_BITSET_PRIVATE -FUTEX_WAKE_BITSET_PRIVATE -FUTEX_WAIT_REQUEUE_PI_PRIVATE -FUTEX_CMP_REQUEUE_PI_PRIVATE +FUTEX_REQUEUE_PRIVATE (FUTEX_REQUEUE | FUTEX_PRIVATE_FLAG) +FUTEX_CMP_REQUEUE_PRIVATE (FUTEX_CMP_REQUEUE | FUTEX_PRIVATE_FLAG) +FUTEX_WAKE_OP_PRIVATE (FUTEX_WAKE_OP | FUTEX_PRIVATE_FLAG) +FUTEX_LOCK_PI_PRIVATE (FUTEX_LOCK_PI | FUTEX_PRIVATE_FLAG) +FUTEX_UNLOCK_PI_PRIVATE (FUTEX_UNLOCK_PI | FUTEX_PRIVATE_FLAG) +FUTEX_TRYLOCK_PI_PRIVATE (FUTEX_TRYLOCK_PI | FUTEX_PRIVATE_FLAG) +FUTEX_WAIT_BITSET_PRIVATE (FUTEX_WAIT_BITSET | FUTEX_PRIVATE_FLAG) +FUTEX_WAKE_BITSET_PRIVATE (FUTEX_WAKE_BITSET | FUTEX_PRIVATE_FLAG) +FUTEX_WAIT_REQUEUE_PI_PRIVATE (FUTEX_WAIT_REQUEUE_PI | FUTEX_PRIVATE_FLAG) +FUTEX_CMP_REQUEUE_PI_PRIVATE (FUTEX_CMP_REQUEUE_PI | FUTEX_PRIVATE_FLAG) FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME FUTEX_WAIT_REQUEUE_PI|FUTEX_CLOCK_REALTIME diff --git a/xlat/futexwakecmps.in b/xlat/futexwakecmps.in index 2afb9f53..743e44c2 100644 --- a/xlat/futexwakecmps.in +++ b/xlat/futexwakecmps.in @@ -1,6 +1,6 @@ -FUTEX_OP_CMP_EQ -FUTEX_OP_CMP_NE -FUTEX_OP_CMP_LT -FUTEX_OP_CMP_LE -FUTEX_OP_CMP_GT -FUTEX_OP_CMP_GE +FUTEX_OP_CMP_EQ 0 +FUTEX_OP_CMP_NE 1 +FUTEX_OP_CMP_LT 2 +FUTEX_OP_CMP_LE 3 +FUTEX_OP_CMP_GT 4 +FUTEX_OP_CMP_GE 5 diff --git a/xlat/futexwakeops.in b/xlat/futexwakeops.in index 3d129293..5bb5b198 100644 --- a/xlat/futexwakeops.in +++ b/xlat/futexwakeops.in @@ -1,5 +1,5 @@ -FUTEX_OP_SET -FUTEX_OP_ADD -FUTEX_OP_OR -FUTEX_OP_ANDN -FUTEX_OP_XOR +FUTEX_OP_SET 0 +FUTEX_OP_ADD 1 +FUTEX_OP_OR 2 +FUTEX_OP_ANDN 3 +FUTEX_OP_XOR 4 -- 2.40.0