Re: [PATCH 01/27] [AARCH64] Fix utmp struct for compatibility reasons.

From: Yury Norov
Date: Thu Jun 23 2016 - 00:36:17 EST


On Tue, Jun 21, 2016 at 11:14:54AM +0100, Szabolcs Nagy wrote:
> On 21/06/16 06:06, Yury Norov wrote:
> > From: Andrew Pinski <apinski@xxxxxxxxxx>
> >
> > NOTE This is an ABI change for AARCH64.
> > If you have some AARCH32 and AARCH64 applications and they both use
> > utmp, one of them will fail due to the use of time_t inside the
> > utmp binary format.
> >
> > This fixes the problem by setting __WORDSIZE_TIME64_COMPAT32.
>
> i think changing the abi now is not ok.
>
> this is BZ 17470 and i think it should be discussed separately
> from ilp32.
>
> if it's possible to detect the utmp file format, that would
> allow a reasonable fix, the way glibc changes the struct def
> based on lp64 targets is non-conforming.

Hi Joseph, Szabolcs,

I revised it and found that we don't need __WORDSIZE_TIME64_COMPAT32
because ilp32 already has 32-bit time_t.
So for now sysdeps/aarch64/bits/wordsize.h is looking like this:
#ifdef __LP64__
# define __WORDSIZE 64
#else
# define __WORDSIZE 32
# define __WORDSIZE32_SIZE_ULONG 1
# define __WORDSIZE32_PTRDIFF_LONG 1
#endif

is it OK? Andrew?