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: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Andreas Schwab <schwab at suse dot de>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 15 Dec 2015 09:35:10 -0800
- 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> <mvm7fkf7hr0 dot fsf at hawking dot suse dot de>
On Tue, Dec 15, 2015 at 9:18 AM, Andreas Schwab <schwab@suse.de> wrote:
> "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.
>
We are talking C codes here, not assembly codes.
--
H.J.