This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v5] Add LFS support for fts functions [BZ #11460]


On Thu, 2015-10-22 at 13:34 +0200, Mark Wielaard wrote:
> I believe I dealt with all the review comments. This last version
> is just to deal with the changes caused by rebasing to current master.
> OK to commit?

Ping. I rebased and retested again. This time luckily the only conflicts
were in the NEWS file, so I won't post a new version. I still would like
to commit it though. OK?

> changes:
> - Rebased. Deal with prototype-style functions everywhere.
> 
> V4 changes:
> - Add NEWS entry.
> 
> V3 changes:
> - Remove redundant initialization in test.
> - Use %m instead of %s with strerror(errno) in test.
> - Use 0600/0700 modes for open/mkdir in test.
> - Replace error with printf/exit(1) in test.
> - Use asprintf instead of malloc+snprintf in test.
> 
> V2 changes:
> - Change fts functions to prototypes.
> - Update sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist
> - Add sysdeps/unix/sysv/linux/mips/mips64/n64/fts{64,}.c
> - Add sysdeps/unix/sysv/linux/x86_64/x32/fts{64,}.c
> 
> fts didn't have large-file support yet and fts.h had an #error preventing
> usage when _FILE_OFFSET_BITS was set. This required nasty workarounds for
> programs using fts with LFS. This patch implements LFS support for fts by
> adding FTS64 and FTENT64 variants plus fts64 functions. Which are simple
> aliases for 64bit off_t arches.
> 
> Also includes a simple testcase for some of the fts functions with or
> without LFS enabled.
> 
> 2015-10-22  Mark Wielaard  <mjw@redhat.com>
> 
> 	* io/Makefile (routines): Add fts64.
> 	(tests): Add tst-fts and tst-fts-lfs.
> 	(CFLAGS-fts64.c): New.
> 	* io/Versions (GLIBC_2.23): New.
> 	* io/fts.c: Replace FTS with FTSOBJ, FTSENT with FTSENTRY. Use
> 	function defines FTS_OPEN, FTS_CLOSE, FTS_READ, FTS_SET and
> 	FTS_CHILDREN. Define FTSOBJ, FTSENTRY, FTS_OPEN, FTS_CLOSE,
> 	FTS_READ, FTS_SET, FTS_CHILDREN, INO_T, STAT and LSTAT if necessary.
> 	* io/fts.h (FTS64): New if _USE_LARGEFILE64.
> 	(FTSENT64): Likewise.
> 	(fts64_children): Likewise.
> 	(fts64_close): Likewise.
> 	(fts64_open): Likewise.
> 	(fts64_read): Likewise.
> 	(fts64_set): Likewise.
> 	* io/fts64.c: New file.
> 	* io/tst-fts.c: New test.
> 	* io/tst-fts-lfs.c: Likewise.
> 	* sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.23): Add
> 	GLIBC_2.23, fts64_children, fts64_close, fts64_open, fts64_read and
> 	fts64_set.
> 	* sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
> 	Likewise.
> 	* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist:
> 	Likewise.
> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
> 	* sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
> 	* sysdeps/wordsize-64/fts.c: New file.
> 	* sysdeps/wordsize-64/fts64.c: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips64/n64/fts.c: Likewise.
> 	* sysdeps/unix/sysv/linux/mips/mips64/n64/fts64.c: Likewise.
> 	* sysdeps/unix/sysv/linux/x86_64/x32/fts.c: likewise.
> 	* sysdeps/unix/sysv/linux/x86_64/x32/fts64.c: likewise.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]