From patchwork Wed Feb 12 18:09:58 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steve Ellcey X-Patchwork-Id: 319718 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ozlabs.org (Postfix) with ESMTP id 9F9F42C00AF for ; Thu, 13 Feb 2014 05:10:11 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 8B8248BF1C; Wed, 12 Feb 2014 18:10:10 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MSrJfzKStdK4; Wed, 12 Feb 2014 18:10:09 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 9CD768BEC5; Wed, 12 Feb 2014 18:10:09 +0000 (UTC) X-Original-To: uclibc@lists.busybox.net Delivered-To: uclibc@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 237E81C1083 for ; Wed, 12 Feb 2014 18:10:08 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 1E5FB8BEC5 for ; Wed, 12 Feb 2014 18:10:08 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id THwNDxW8NuwV for ; Wed, 12 Feb 2014 18:10:05 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from multi.imgtec.com (multi.imgtec.com [194.200.65.239]) by whitealder.osuosl.org (Postfix) with ESMTPS id 64DA48B0D4 for ; Wed, 12 Feb 2014 18:10:05 +0000 (UTC) From: "Steve Ellcey " Date: Wed, 12 Feb 2014 10:09:58 -0800 To: Subject: [PATCH] Fix sync_file_range.c for MIPS64 N32 ABI builds. User-Agent: Heirloom mailx 12.5 6/20/10 MIME-Version: 1.0 Message-ID: X-SEF-Processed: 7_3_0_01192__2014_02_12_18_10_03 X-BeenThere: uclibc@uclibc.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussion and development of uClibc \(the embedded C library\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: uclibc-bounces@uclibc.org Sender: uclibc-bounces@uclibc.org The special sync_file_range handling is only needed for the O32 ABI (regardless of whether it is on mips32 or mips64). The N32 (and N64) ABI's should both use the standard code. This routine was using the special code for the N32 ABI because that ABI has a word size of 32 bits and that is wrong. This patch fixes it by checking the ABI used instead of checking the word size. Signed-off-by: Steve Ellcey --- libc/sysdeps/linux/common/sync_file_range.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libc/sysdeps/linux/common/sync_file_range.c b/libc/sysdeps/linux/common/sync_file_range.c index 66751c6..8d4ed92 100644 --- a/libc/sysdeps/linux/common/sync_file_range.c +++ b/libc/sysdeps/linux/common/sync_file_range.c @@ -24,7 +24,7 @@ static int __NC(sync_file_range)(int fd, off64_t offset, off64_t nbytes, unsigne { # if defined __powerpc__ && __WORDSIZE == 64 return INLINE_SYSCALL(sync_file_range, 4, fd, offset, nbytes, flags); -# elif defined __mips__ && __WORDSIZE == 32 +# elif defined __mips__ && _MIPS_SIM == _ABIO32 return INLINE_SYSCALL(sync_file_range, 7, fd, 0, OFF64_HI_LO(offset), OFF64_HI_LO(nbytes), flags); # else