This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] [BZ #19363] Use INTERNAL_SYSCALL_TIMES for Linux times
- From: Andreas Schwab <schwab at suse dot de>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 15 Dec 2015 18:18:27 +0100
- Subject: Re: [PATCH] [BZ #19363] Use INTERNAL_SYSCALL_TIMES for Linux times
- Authentication-results: sourceware.org; auth=none
- References: <20151215032733 dot GA14426 at gmail dot com> <mvm37v49itj dot fsf at hawking dot suse dot de> <20151215150001 dot GT11489 at vapier dot lan> <mvmtwnj7ni7 dot fsf at hawking dot suse dot de> <CAMe9rOqi=mbzbSzPB26HHm=K0iddv6K8Cs8ACbDd_p=Q-ShWew at mail dot gmail dot com>
"H.J. Lu" <hjl.tools@gmail.com> writes:
> On Tue, Dec 15, 2015 at 7:14 AM, Andreas Schwab <schwab@suse.de> wrote:
>> Mike Frysinger <vapier@gentoo.org> writes:
>>
>>> On 15 Dec 2015 10:12, Andreas Schwab wrote:
>>>> I think the correct fix is to make all *_SYSCALL macros operate on long
>>>> long when handling the syscall return value.
>>>
>>> i think the concern is about the opposite behavior -- code relying on the
>>> value being truncated/extended in most places to 32bits.
>>
>> All x86_64 and x32 syscalls return a 64-bit value.
>>
>
> For x86_64 and x32, many, if not most, of system calls return int.
> Some returns long. Only 3, lseek, time and times, returns long long.
On the assembler level, all of them return a 64-bit value.
Andreas.
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."