This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fix posix_fadvise on powerpc32


Ulrich Drepper <drepper@redhat.com> writes:

> Andreas Jaeger wrote:
>
>> ============================================================
>> Index: sysdeps/unix/sysv/linux/posix_fadvise64.c
>> --- sysdeps/unix/sysv/linux/posix_fadvise64.c	17 Aug 2003 00:36:42 -0000	1.1
>> +++ sysdeps/unix/sysv/linux/posix_fadvise64.c	25 Aug 2003 08:19:40 -0000
>> @@ -33,8 +33,8 @@ __posix_fadvise64_l64 (int fd, off64_t o
>>  #ifdef __NR_fadvise64_64
>>    INTERNAL_SYSCALL_DECL (err);
>>    int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd,
>> -			      __LONG_LONG_PAIR (offset >> 32, offset),
>> -			      __LONG_LONG_PAIR (len >> 32, len),
>> +			      __LONG_LONG_PAIR ((long)offset >> 32, (long)offset),
>> +			      __LONG_LONG_PAIR ((long)len >> 32, (long)len),
>>  			      advise);
>>    if (!INTERNAL_SYSCALL_ERROR_P (ret, err))
>>      return 0;
>> @@ -50,7 +50,7 @@ __posix_fadvise64_l64 (int fd, off64_t o
>>  
>>    INTERNAL_SYSCALL_DECL (err2);
>>    int ret2 = INTERNAL_SYSCALL (fadvise64, err2, 5, fd,
>> -			       __LONG_LONG_PAIR (offset >> 32, offset),
>> +			       __LONG_LONG_PAIR ((long)offset >> 32, (long)offset),
>
> This code isn't correct either.  The cast has a higher precedence than
> the shift.  You'll always get zeor as the result.

Argh.  Thanks for noticing.  So, would (long)(offset >> 32) be ok?

Andreas
-- 
 Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj
  SuSE Linux AG, Deutschherrnstr. 15-19, 90429 Nürnberg, Germany
   GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

Attachment: pgp00000.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]