[PATCH] Fix sync_file_range.c for MIPS64 N32 ABI builds.
Khem Raj
raj.khem at gmail.com
Wed Feb 12 18:14:13 UTC 2014
On Feb 12, 2014, at 10:09 AM, Steve Ellcey <sellcey at mips.com> wrote:
> 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 <sellcey at mips.com>
> ---
> 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);
This looks good to me.
More information about the uClibc
mailing list