From patchwork Mon Jul 7 20:23:40 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gratian Crisan X-Patchwork-Id: 367722 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id B38071400BE for ; Tue, 8 Jul 2014 06:25:02 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:to:cc:mime-version:subject:from:message-id :date:content-type; q=dns; s=default; b=Z5VqMyEsFWN98R4+YRpu8pwm Ng46Nn3g6v6PLBVld94ns0d/ltwR0s5jboFTvl0YiXn7tDoQgZFBngSrccXr4yee RstUnxhB7cwsBUPY1k2AgAZS6gKINM4zeUfsIFtqPynY9pam+uUGiLxUNq4uvEc3 IOhD0RRVu8O6K78rcZA= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:to:cc:mime-version:subject:from:message-id :date:content-type; s=default; bh=K56MsZiDsKPjXuwIPZ+c6warTYs=; b= Mrkk99ZfRXEEtgyx3U8ho83HWIPpna5VWKQe0vcvt4Ynm0yZtB1hWKSni+EFgD2i JK3xR+6RdIe/YQc2xCFYz6V+PfJIXindMQ2Hs8ogFg1BLaIiOGsVZKGbhRcOMJiE A76pUx6ydAToYfGw1LNmuz5iIkL+VQhbI/WbOSA1V2w= Received: (qmail 27274 invoked by alias); 7 Jul 2014 20:24:14 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 26935 invoked by uid 89); 7 Jul 2014 20:24:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL, BAYES_00, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-HELO: ni.com To: libc-alpha@sourceware.org Cc: Darren Hart , "Carlos O'Donell" , Joseph Myers , Jeff Law , Scot Salmon , Siddhesh Poyarekar , Thomas Gleixner , Torvald Riegel , Clark Williams , "Paul E. McKenney" , gratian@gmail.com MIME-Version: 1.0 Subject: [PATCH 6/6][BZ #11588] arm: Re-enable PI futex support for ARM kernels >= 3.14.3 X-KeepSent: A4C643C7:D8C1AF84-86257D0E:006C7938; type=4; flags=0; name=$KeepSent From: Gratian Crisan Message-ID: Date: Mon, 7 Jul 2014 15:23:40 -0500 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.12.52, 1.0.14, 0.0.0000 definitions=2014-07-07_03:2014-07-07, 2014-07-07, 1970-01-01 signatures=0 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. Signed-off-by: Gratian Crisan --- ChangeLog: 2014-07-07 Gratian Crisan [BZ #11588] * sysdeps/unix/sysv/linux/arm/kernel-features.h [__LINUX_KERNEL_VERSION < 0x030E03] (__ASSUME_FUTEX_LOCK_PI): Undefine. [__LINUX_KERNEL_VERSION < 0x030E03] (__ASSUME_REQUEUE_PI): Likewise. [__LINUX_KERNEL_VERSION < 0x030E03] (__ASSUME_SET_ROBUST_LIST): Likewise. --- sysdeps/unix/sysv/linux/arm/kernel-features.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/sysdeps/unix/sysv/linux/arm/kernel-features.h b/sysdeps/unix/sysv/linux/arm/kernel-features.h index e755741..dd50cbf 100644 --- a/sysdeps/unix/sysv/linux/arm/kernel-features.h +++ b/sysdeps/unix/sysv/linux/arm/kernel-features.h @@ -32,11 +32,13 @@ # define __ASSUME_SENDMMSG_SYSCALL 1 #endif -#include_next - -/* 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 + +#include_next