svn commit: r219696 - head/lib/libc/gen

Pawel Jakub Dawidek pjd at FreeBSD.org
Wed Mar 16 08:58:09 UTC 2011


Author: pjd
Date: Wed Mar 16 08:58:09 2011
New Revision: 219696
URL: http://svn.freebsd.org/changeset/base/219696

Log:
  From fts.c comment:
  
  The "FTS_NOSTAT" option can avoid a lot of calls to stat(2) if it knows that a
  directory could not possibly have subdirectories. This is decided by looking at
  the link count: a subdirectory would increment its parent's link count by
  virtue of its own ".." entry.  This assumption only holds for UFS-like
  filesystems that implement links and directories this way, so we must punt for
  others.
  
  It looks like ZFS is a UFS-like file system, as the above also holds for ZFS.
  Add ZFS to the list of file systems that allow for such optimization.
  
  MFC after:	1 month

Modified:
  head/lib/libc/gen/fts-compat.c
  head/lib/libc/gen/fts.c

Modified: head/lib/libc/gen/fts-compat.c
==============================================================================
--- head/lib/libc/gen/fts-compat.c	Wed Mar 16 08:56:22 2011	(r219695)
+++ head/lib/libc/gen/fts-compat.c	Wed Mar 16 08:58:09 2011	(r219696)
@@ -110,6 +110,7 @@ struct _fts_private {
 
 static const char *ufslike_filesystems[] = {
 	"ufs",
+	"zfs",
 	"nfs",
 	"nfs4",
 	"ext2fs",

Modified: head/lib/libc/gen/fts.c
==============================================================================
--- head/lib/libc/gen/fts.c	Wed Mar 16 08:56:22 2011	(r219695)
+++ head/lib/libc/gen/fts.c	Wed Mar 16 08:58:09 2011	(r219696)
@@ -100,6 +100,7 @@ struct _fts_private {
 
 static const char *ufslike_filesystems[] = {
 	"ufs",
+	"zfs",
 	"nfs",
 	"nfs4",
 	"ext2fs",


More information about the svn-src-all mailing list