Commit Graph

7 Commits

Author SHA1 Message Date
Paul Eggert
2b778ceb40 Update copyright dates with scripts/update-copyrights
I used these shell commands:

../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")

and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master
2021-01-02 12:17:34 -08:00
Adhemerval Zanella
22edf4d4b2 Revert "linux: Move {f}xstat{at} to compat symbols"
This reverts commit 20b39d5946 to move
{f}xstat{at} back to default symbols.  ABIs with default symbol version
of 2.33 or newer (such as riscv32) continue to just provide the stat
symbols.

The idea is to not force static libraries built against old glibc
to update against new glibcs (since they reference the old
{f}xstat{at} symbols).

Checked on x86_64-linux-gnu and i686-linux-gnu.
2020-12-02 14:45:22 -03:00
Adhemerval Zanella
20b39d5946 linux: Move {f}xstat{at} to compat symbols
They are no interna uses anymore.  The riscv32 ABI was added on 2.33,
so it is safe to remove the old __{f,l}stat{at} symbols and just
provide the newer {f,l}stat{at} ones.

Checked with a build for all affected ABIs. I also checked on x86_64,
i686, powerpc, powerpc64le, sparcv9, sparc64, s390, and s390x.

Reviewed-by: Lukasz Majewski <lukma@denx.de>
2020-10-09 17:02:07 -03:00
Adhemerval Zanella
6073bae64c linux: Disentangle fstatat from fxstatat
It implements all the required syscall for the all Linux kABIS on
fstatat{64} instead of calling fxstatat{64}.

On non-LFS implementation, it handles 3 cases:

  1. New kABIs which uses generic pre 64-bit time Linux ABI (csky and
     nios): it issues __NR_fstat64 plus handle the overflow on st_ino,
     st_size, or st_blocks.

  2. Old KABIs with old non-LFS support (arm, i386, hppa, m68k,
     microblaze, mips32, s390, sh, powerpc, and sparc32): it issues
     __NR_fstatat64 and convert the result to struct stat.

  3. 64-bit kABI outliers (mips64 and mips64-n32): it issues
     __NR_newfstatat and convert the result to struct stat.

The generic LFS implementation handles multiple cases:

  1. XSTAT_IS_XSTAT64 being 1:

    1.1. 64-bit kABI (aarch64, ia64, powerpc64*, s390x, riscv64, and
         x86_64): it issues __NR_newfstatat.

    1.2. 64-bit kABI outlier (alpha): it issues __NR_fstatat64.

    1.3. 64-bit kABI outlier where struct stat64 does not match kernel
         one (sparc64): it issues __NR_fstatat64 and convert the result
         to struct stat64.

    1.4. 32-bit kABI with default 64-bit time_t (arc, riscv32): it
         issues __NR_statx and convert the result to struct stat64.

  2. Old ABIs with XSTAT_IS_XSTAT64 being 0:

    2.1. All kABIs with non-LFS support (arm, csky, i386, hppa, m68k,
         microblaze, nios2, sh, powerpc32, and sparc32): it issues
         __NR_fstatat64.

    2.2. 64-bit kABI outliers (mips64 and mips64-n32): it issues
         __NR_newfstatat and convert the result to struct stat64.

It allows to remove all the hidden definitions from the {f,l}xstat{64}
(some are still kept because Hurd requires it).

Checked with a build for all affected ABIs. I also checked on x86_64,
i686, powerpc, powerpc64le, sparcv9, sparc64, s390, and s390x.

Reviewed-by: Lukasz Majewski <lukma@denx.de>
2020-10-09 17:02:06 -03:00
Adhemerval Zanella
5febe6a38f linux: Consolidate fxstat{64}
The LFS support is implemented on fxstat64.c, instead of fxstat.c for
64-bit architectures.  The fxstat.c implements the non-LFS and it is
a no-op for !XSTAT_IS_XSTAT64.

The generic non-LFS implementation handles two cases:

  1. New kABIs which uses generic pre 64-bit time Linux ABI (csky and
     nios): it issuess __NR_fstat64 plus handle the overflow on st_ino,
     st_size, or st_blocks.  It only handles _STAT_VER_KERNEL.

  2. Old KABIs with old non-LFS support (arm, i386, hppa, m68k,
     microblaze, s390, sh, powerpc, and sparc32).  For _STAT_VER_KERNEL
     it issues __NR_fstat, otherwise it calls __NR_fstat64 and convert
     to non-LFS stat struct and handle possible overflows on st_ino,
     st_size, or st_blocks.

Also non-LFS mips is an outlier and it has its own implementation since
_STAT_VER_LINUX requires a different conversion function (it uses the
kernel_stat as the sysissues argument since its exported ABI is
different than the kernel one for both non-LFS and LFS implementation).

The generic LFS implementation handles multiple cases:

  1. XSTAT_IS_XSTAT64 being 1:

    1.1. 64-bit kABI (aarch64, ia64, powerpc64*, s390x, riscv64, and
	 x86_64): it issuess __NR_fstat for _STAT_VER_KERNEL or
	 _STAT_VER_LINUX.

    1.2. Old 64-bit kABI with defines __NR_fstat64 instead of __NR_fstat
         (sparc64): it issues __NR_fstat for _STAT_VER_KERNEL or
         __NR_fstat64 and convert to struct stat64.

    1.3. New 32-bit kABIs with only 64-bit time_t support (arc and
	 riscv32): it issuess __NR_statx and covert to struct stat64.

  2. Old ABIs with XSTAT_IS_XSTAT64 being 0 (arm, csky, i386, hppa,
     m68k, microblaze, mips32, nios2, sh, powerpc32, and sparc32): it
     issues __NR_fstat64.

Also, two special cases requires specific implementations:

  1. alpha: it requires to handle _STAT_VER_KERNEL64 to issues
     __NR_fstat64 and use the kernel_stat with __NR_fstat otherwise.

  2. mips64: as for non-LFS implementation its ABIs differ from
     glibc exported one, which requires an specific conversion
     function to handle the kernel_stat.

Checked with a build for all affected ABIs. I also checked on x86_64,
i686, powerpc, powerpc64le, sparcv9, sparc64, s390, and s390x.

Reviewed-by: Lukasz Majewski <lukma@denx.de>
2020-09-11 14:35:20 -03:00
Ulrich Drepper
7fe1586f46 Update.
2004-03-23  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_pread, __NR_pwrite):
	Define to __NR_p{read,write}64 if not defined.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread,
	__NR_pwrite): Define to __NR_p{read,write}64 if not defined instead
	of defining it the other way around.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Move common syscalls
	for 64bit arches to sysdeps/unix/sysv/linux/wordsize-64/syscalls.list.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/alpha/pread64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/pwrite64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/mmap64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/sendfile64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/statfs64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/fstatfs64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/pread64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/getrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/readdir64_r.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/pwrite64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/getdents64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/readdir_r.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/readdir.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/mmap64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/setrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/getdents.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/readdir64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/statfs64.c: Removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/fstatfs64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/getrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/readdir64_r.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/getdents64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/readdir_r.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/readdir.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/setrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/getdents.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/readdir64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/statfs64.c: Removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/fstatfs64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/pread64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/getrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/readdir64_r.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/pwrite64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/getdents64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/readdir_r.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/lxstat.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/readdir.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/mmap64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/xstat.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/setrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/sendfile64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/getdents.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/readdir64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/fxstat.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/statfs64.c: Removed.
	* sysdeps/unix/sysv/linux/ia64/fstatfs64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/pread64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/glob64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/truncate64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/xstat64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/pwrite64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/getdents64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/readdir_r.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/lxstat.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/readdir.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/mmap64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/xstat.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/fxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/sendfile64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/getdents.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/lxstat64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/readdir64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/fxstat.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/statfs64.c: Removed.
	* sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: Removed.
	* sysdeps/unix/sysv/linux/alpha/Implies: New file.
	* sysdeps/unix/sysv/linux/alpha/getdents64.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-64/Implies: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/Implies: New file.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/Implies: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/lxstat.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/statvfs64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fstatvfs64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/pread64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fstatvfs.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/getrlimit64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/glob64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/xstat64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/pwrite64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/lxstat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/readdir.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/mmap64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/xstat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fxstat64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/setrlimit64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/sendfile64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/getdents.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/statvfs.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/lxstat64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fxstat.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/statfs64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fstatfs64.c: New file.
	* sysdeps/unix/sysv/linux/ia64/Implies: New file.
	* sysdeps/unix/sysv/linux/x86_64/Implies: New file.
2004-03-24 00:06:13 +00:00
Ulrich Drepper
1cab544423 Update.
1997-10-31 23:16  Ulrich Drepper  <drepper@cygnus.com>

	* posix/glob.c (glob): If calling glob_in_dir for a list which was
	generated by a glob call disable GLOB_ERR since there might be
	non-directories in the list (PR203).

	* posix/glob.h (GLOB_ONLYDIR): New flag.
	(__GLOB_FLAGS): Add GLOB_ONLYDIR.
	* posix/glob.c: Define HAVE_D_TYPE if _DIRENT_HAVE_D_TYPE is defined.
	(glob): Add GLOB_ONLYDIR to recursive call to match dirname.
	(glob_in_dir) [HAVE_D_TYPE]: While reading directory entries test
	whether they are directories if GLOB_ONLYDIR flag is given.
	* manual/pattern.texi: Document GLOB_ONLYDIR.

	* misc/Makefile (tests): Add tst-fdset.

	* sysdeps/i386/bits/select.h: Rewrite asm macros to be cleaner.

	* sysdeps/unix/sysv/linux/Dist: Add xstatconv.c.
	* sysdeps/unix/sysv/linux/alpha/Dist: Likewise.

	* time/strptime.c (strptime_internal): In %y format, regard years
	>= 69 as of twentieth century, all other as of twenty-first.

	* time/tzset.c: Correct typo and little optimization.

1997-10-31 16:01  Ulrich Drepper  <drepper@cygnus.com>

	* inet/getnetgrent.c: Allocate buffer dynamically if needed.
	Suggested by Joe Keane <jgk@jgk.org>.

1997-10-31  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* io/ftw.h: Declare __ftw64_func_t and __nftw64_func_t only when
	__USE_FILE_OFFSET64 || __USE_LARGEFILE64 is true.

1997-10-30 05:47  Ulrich Drepper  <drepper@cygnus.com>

	* misc/mntent.c: Don't use statically allocated buffer.  Allocate
	it dynamically if necessary.
	* misc/efgcvt.c: Likewise.
	Patch by Joe Keane <jgk@jgk.org>.

	* misc/mntent.c: Allow freeing of allocated buffer in
	__libc_subfreeres.
	* misc/efgcvt.c: Likewise.

	* misc/efgcvt.c: Call correct reentrant functions.
	Use better values for MAXDIG.
	* misc/qefgcvt.c: Use better values for MAXDIG.

1997-10-29 18:48   Richard Henderson  <rth@cygnus.com>

	* sysdeps/unix/sysv/linux/Makefile [io]: Add xstatconv.
	* sysdeps/unix/sysv/linux/alpha/xstatconv.c: New file.  Convert
	between kernel_stat and the userland version indicated.
	* sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
	* sysdeps/unix/sysv/linux/bits/stat.h: Define _STAT_VER_KERNEL.

	* sysdeps/unix/sysv/linux/fxstat.c: Defer to __xstat_conv.  Alias
	to __*xstat64 if requested.
	* sysdeps/unix/sysv/linux/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/xstat.c: Likewise.

	* sysdeps/unix/sysv/linux/alpha/bits/stat.h: Add struct stat64.
	Increment _STAT_VER, and make struct stat the same.
	* sysdeps/unix/sysv/linux/alpha/bits/types.h: Add __ino64_t, and
	__off64_t.  Reorganize.
	* sysdeps/unix/sysv/linux/alpha/kernel_stat.h: Add struct glibc2_stat
	for backward compatibility.  Define XSTAT_IS_XSTAT64.

	* sysdeps/unix/sysv/linux/alpha/fxstat64.c: Empty file.
	* sysdeps/unix/sysv/linux/alpha/lxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/xstat64.c: Likewise.

	* sysdeps/unix/sysv/linux/alpha/bits/dirent.h (struct dirent): For
	consistency, force d_ino to use ino_t and supply padding.

1997-10-29 18:47  Richard Henderson  <rth@cygnus.com>

	* libio/iofopen.c: Correct weak_alias.
1997-10-31 22:55:02 +00:00