This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH v4 2/2] Define __STATFS_MATCHES_STATFS64
On Fri, Oct 18, 2019 at 8:14 AM Joseph Myers <email@example.com> wrote:
> On Wed, 16 Oct 2019, Alistair Francis wrote:
> > Add a new macro __STATFS_MATCHES_STATFS64 that specifies if fsblkcnt_t
> > matches fsblkcnt64_t and if fsfilcnt_t matches fsfilcnt64_t.
> > On a 32-bit platform with a 64-bit ino_t type (__STATFS_MATCHES_STATFS64
> > == 1) we want to update the statfs struct to remove the padding as it
> > isn't required. As we don't have the padding we also need to update the
> > overflow checker to not access the undefined members.
> > * bits/typesizes.h: Define __STATFS_MATCHES_STATFS64 to handle
> > 64-bit __fsblkcnt_t and __fsfilcnt_t types on 32-bit hosts.
> > * sysdeps/unix/sysv/linux/generic/bits/statfs.h: Likewise.
> > * sysdeps/unix/sysv/linux/generic/bits/typesizes.h: Likewise.
> > * sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h: Likewise.
> > * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Likewise.
> > * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: Likewise.
> > * sysdeps/unix/sysv/linux/x86/bits/typesizes.h: Likewise.
> Note that you no longer need to write ChangeLog entries.
> I don't follow the logic for which bits/typesizes.h headers you're
> updating. You're updating some for architectures not using linux/generic,
> which I think is the right thing to do - make them provide the defined
> API, whether or not they currently use any code that actually tests the
> __STATFS_MATCHES_STATFS64 macro. But you're not updating
> sysdeps/unix/sysv/linux/alpha/bits/typesizes.h or
> sysdeps/mach/hurd/bits/typesizes.h; I'd expect those to be updated as well
> for consistency.
I just missed those two, I have updated them.
> Joseph S. Myers