This is the mail archive of the
mailing list for the glibc project.
Re: PATCH: Fix __WORDSIZE for ia64.
On Fri, Aug 01, 2003 at 08:17:51PM +0200, Jakub Jelinek wrote:
> On Fri, Aug 01, 2003 at 07:22:27AM -0700, H. J. Lu wrote:
> > On Fri, Aug 01, 2003 at 10:37:48AM +0200, Jakub Jelinek wrote:
> > > On Fri, Aug 01, 2003 at 01:13:33AM -0700, Roland McGrath wrote:
> > > > > With this change, the only loss is we can no longer access the old utmp
> > > > > file. I think it is the price we should pay to fix the problem.
> > > >
> > > > I am inclined to agree with this conclusion (the same one made on other
> > > > 64/32 platforms). But it's not a change you just slip in without comment,
> > > > discussion with users and system maintainers, and approval from the
> > > > architecture's canonical maintainer.
> > >
> > > There are many programs which access utmp directly and use struct utmp
> > > or struct lastlog for that (instead of using the libc acess functions).
> > > Defining __WORDSIZE_COMPAT32 macro on ia64 means you simply abandon
> > > compatibility with any ia64 programs which ever use utmp/wtmp/lastlog,
> > It is only incompatible with old static ia64 programs which access
> > utmp/wtmp/lastlog and the old utmp/wtmp/lastlog files.
> No, this is incorrect.
> Even programs using say getutent look at struct utmp members
> and by defining __WORDSIZE_COMPAT32 you change its layout.
> So, you would at least need new symbol version for most of the utmp.h
> accessor functions.
That is true. I will provide them.
> Plus, if you want to change something and don't care about programs
> looking at the file directly, you should keep 64-bit utmp format
> and write support for translating 64-bit file format into 32-bit
> struct utmp in 32-bit programs.
The idea is running unmodified ia32 binaries.
> But I'd suggest you to first look what programs do direct access.
> AFAIK there are really many.
Only login related programs need to acess those files. I don't think
they have to access them directly. I can fix those programs when
they are found.