This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH 17/23] [AARCH64] ILP32: introduce syscalls that pass off_t
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Yury Norov <ynorov at caviumnetworks dot com>
- Cc: <libc-alpha at sourceware dot org>, <linux-kernel at vger dot kernel dot org>, <arnd at arndb dot de>, <catalin dot marinas at arm dot com>, <marcus dot shawcroft at arm dot com>, <philb at gnu dot org>, <davem at davemloft dot net>, <szabolcs dot nagy at arm dot com>, <maxim dot kuvyrkov at linaro dot org>, <pinskia at gmail dot com>, <bamvor dot zhangjian at huawei dot com>, <schwab at suse dot de>, <fweimer at redhat dot com>, <Prasun dot Kapoor at cavium dot com>, <cmetcalf at mellanox dot com>, <hjl dot tools at gmail dot com>, <adhemerval dot zanella at linaro dot org>, Yury Norov <yury dot norov at gmail dot com>
- Date: Tue, 28 Jun 2016 17:13:07 +0000
- Subject: Re: [PATCH 17/23] [AARCH64] ILP32: introduce syscalls that pass off_t
- Authentication-results: sourceware.org; auth=none
- References: <1467131978-669-1-git-send-email-ynorov at caviumnetworks dot com> <1467131978-669-18-git-send-email-ynorov at caviumnetworks dot com>
On Tue, 28 Jun 2016, Yury Norov wrote:
> ILP32 has 64-bit off_t, to follow modern requirements.
> But kernel clears top-halves of input registers. It means
> we have to pass corresponding arguments in a pair, like
> aarch32 does. In this patch all affected syscalls are redefined.
> Most of them are taken from arm code.
Please follow the spirit of Adhemerval's recent work. Determine the
appropriate abstractions for the architecture differences for these
syscalls, and set up unified implementations used on all architectures,
rather than increasing the number of architecture-specific variants.
> +#ifdef __ILP32__
> +/* Define this if your 32-bit syscall API requires 64-bit register
> + pairs to start with an even-number register. */
> +#define __ASSUME_ALIGNED_REGISTER_PAIRS 1
> +#endif /* __ILP32__ */
Joseph S. Myers