From: Pádraig Brady
Date: Sun, 20 Dec 2015 23:46:05 +0000 (+0000) Subject: fts: enable leaf optimization for XFS X-Git-Tag: v1.0~6879 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=d459ec6a4f97001a57d9299143ea9a5f6b1f313b;p=gnulib.git fts: enable leaf optimization for XFS XFS provides usable dirent.d_type only for DT_DIR, but the noleaf optimization still applies, as confirmed with: test $(($(find . -maxdepth 1 -type d | wc -l) + 1)) = $(stat -c %h .) Enabling this gives significant traversal speedup. Testing with find(1) gives: $ time find/find-before /usr/share >/dev/null real 0m0.410s user 0m0.145s sys 0m0.266s $ time find/find-after /usr/share >/dev/null real 0m0.278s user 0m0.147s sys 0m0.131s * lib/fts.c (leaf_optimization_applies): Add XFS to the white list. --- diff --git a/ChangeLog b/ChangeLog index 3945c58d20..464dc7484b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2015-12-20 Pádraig Brady
+
+ fts: enable leaf optimization for XFS
+ XFS provides usable dirent.d_type only for DT_DIR,
+ but the noleaf optimization still applies.
+ * lib/fts.c (leaf_optimization_applies): Add XFS to the white list.
+
2015-12-17 Paul Eggert