This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: PATCH: Fix struct stat [__USE_FILE_OFFSET64] insysdeps/unix/sysv/linux/bits/stat.h
- From: Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- To: schwab at suse dot de
- Cc: hans-peter dot nilsson at axis dot com, libc-alpha at sources dot redhat dot com, dev-etrax at pulsar dot homelinux dot net
- Date: Tue, 3 Jun 2003 14:04:22 +0200
- Subject: Re: PATCH: Fix struct stat [__USE_FILE_OFFSET64] insysdeps/unix/sysv/linux/bits/stat.h
> From: Andreas Schwab <schwab@suse.de>
> Date: Tue, 03 Jun 2003 13:55:42 +0200
> Hans-Peter Nilsson <hans-peter.nilsson@axis.com> writes:
> |> This bug is visible for programs compiled with
> |> -D_FILE_OFFSET_BITS=64 on platforms where the ABI says there is
> |> no alignment-padding between structure elements. AFAIK only
> |> cris-axis-linux-gnu matches that description. The bug causes
> |> struct stat and struct stat64 to have different layout.
>
> How about using your own bits/stat.h? m68k-linux has a similar problem
> and does that.
If it's indeed due to the exakt same problem, then that solution
is faulty.
> IMHO the generic version should really be moved to i386.
But the "generic" bits/stat.h would still be buggy and as such
at least confusing. Look at bits/stat.h: compare struct stat64
with struct stat *with __USE_FILE_OFFSET64 defined*. See the
difference? There should be no difference. That's the bug. My
patch has absolutely no effect on platforms that pad the
structs; it's a generic fix.
brgds, H-P