Readdir NFSv4 With Readdir Plus

From Linux NFS

(Difference between revisions)
Jump to: navigation, search
(Created page with '<pre> 36: Linux 2.6.36 36NORC: Linux 2.6.36 (without readdir cap) 38: Linux 2.6.38 38RC: Linux 2.6.38 (with readdir cap added back) 38NB: Linux 2.6.38 (with Neil Bro…')
Line 1: Line 1:
<pre>
<pre>
-
 
     36: Linux 2.6.36
     36: Linux 2.6.36
36NORC: Linux 2.6.36 (without readdir cap)
36NORC: Linux 2.6.36 (without readdir cap)
Line 6: Line 5:
   38RC: Linux 2.6.38 (with readdir cap added back)
   38RC: Linux 2.6.38 (with readdir cap added back)
   38NB: Linux 2.6.38 (with Neil Brown's patch and loop detection)
   38NB: Linux 2.6.38 (with Neil Brown's patch and loop detection)
 +
</pre>
 +
== 100 Files ==
-
100 Files
+
===== time ls -f --color=none /nfs/test/dir.100 > ls.txt =====
-
=========
+
<pre>
-
 
+
-
time ls -f --color=none /nfs/test/dir.100 > ls.txt
+
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 22: Line 21:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |    2    |    2    |    6    |    6    |    6
readdir |    2    |    2    |    6    |    6    |    6
 +
</pre>
-
time ls -lU --color=none /nfs/test/dir.100 > ls.txt
+
===== time ls -lU --color=none /nfs/test/dir.100 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 33: Line 34:
  lookup |  102    |  102    |    2    |    2    |    2
  lookup |  102    |  102    |    2    |    2    |    2
readdir |    2    |    2    |    6    |    6    |    6
readdir |    2    |    2    |    6    |    6    |    6
 +
</pre>
-
time ls -U --color=none /nfs/test/dir.100 > ls.txt
+
===== time ls -U --color=none /nfs/test/dir.100 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 44: Line 47:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |    2    |    2    |    6    |    6    |    6
readdir |    2    |    2    |    6    |    6    |    6
 +
</pre>
-
time rm -rf /nfs/test/dir.100 > ls.txt
+
===== time rm -rf /nfs/test/dir.100 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 57: Line 62:
statfs  |    1    |    1    |    0    |    1    |    1
statfs  |    1    |    1    |    0    |    1    |    1
readdir |    2    |    2    |    6    |    2    |    2
readdir |    2    |    2    |    6    |    2    |    2
 +
</pre>
 +
== 1,000 Files ==
-
1,000 Files
+
===== time ls -f --color=none /nfs/test/dir.1000 > ls.txt =====
-
===========
+
<pre>
-
 
+
-
time ls -f --color=none /nfs/test/dir.1000 > ls.txt
+
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 73: Line 78:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |    13    |    13    |    59    |    59    |    59
readdir |    13    |    13    |    59    |    59    |    59
 +
</pre>
-
time ls -lU --color=none /nfs/test/dir.1000 > ls.txt
+
===== time ls -lU --color=none /nfs/test/dir.1000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 84: Line 91:
  lookup |  1002  |  1002  |    2    |    2    |    2
  lookup |  1002  |  1002  |    2    |    2    |    2
readdir |    13    |    13    |    59    |    59    |    59
readdir |    13    |    13    |    59    |    59    |    59
 +
</pre>
-
time ls -U --color=none /nfs/test/dir.1000 > ls.txt
+
===== time ls -U --color=none /nfs/test/dir.1000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 95: Line 104:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |    13    |    13    |    59    |    59    |    59
readdir |    13    |    13    |    59    |    59    |    59
 +
</pre>
-
time rm -rf /nfs/test/dir.1000 > ls.txt
+
===== time rm -rf /nfs/test/dir.1000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 108: Line 119:
statfs  |    1    |    1    |    0    |    1    |    1
statfs  |    1    |    1    |    0    |    1    |    1
readdir |    13    |    13    |    59    |    20    |    20
readdir |    13    |    13    |    59    |    20    |    20
 +
</pre>
 +
== 10,000 Files ==
-
10,000 Files
+
===== time ls -f --color=none /nfs/test/dir.10000 > ls.txt =====
-
============
+
<pre>
-
 
+
-
time ls -f --color=none /nfs/test/dir.10000 > ls.txt
+
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 124: Line 135:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |  139    |  139    |  589    |  197    |  241
readdir |  139    |  139    |  589    |  197    |  241
 +
</pre>
-
time ls -lU --color=none /nfs/test/dir.10000 > ls.txt
+
===== time ls -lU --color=none /nfs/test/dir.10000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 135: Line 148:
  lookup |  10002  |  10002  |    2    |  10002  |    2
  lookup |  10002  |  10002  |    2    |  10002  |    2
readdir |  139    |  139    |  589    |  197    |  589
readdir |  139    |  139    |  589    |  197    |  589
 +
</pre>
-
time ls -U --color=none /nfs/test/dir.10000 > ls.txt
+
===== time ls -U --color=none /nfs/test/dir.10000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 146: Line 161:
  lookup |    2    |    2    |    2    |    2    |    2
  lookup |    2    |    2    |    2    |    2    |    2
readdir |  139    |  139    |  589    |  197    |  241
readdir |  139    |  139    |  589    |  197    |  241
 +
</pre>
-
time rm -rf /nfs/test/dir.10000 > ls.txt
+
===== time rm -rf /nfs/test/dir.10000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC  |  38NB
--------+----------+----------+----------+----------+----------
--------+----------+----------+----------+----------+----------
Line 159: Line 176:
statfs  |    1    |    1    |    0    |    1    |    1
statfs  |    1    |    1    |    0    |    1    |    1
readdir |  139    |  139    |  589    |  197    |  197
readdir |  139    |  139    |  589    |  197    |  197
 +
</pre>
 +
== 100,000 Files ==
-
100,000 Files
+
===== time ls -f --color=none /nfs/test/dir.100000 > ls.txt =====
-
=============
+
<pre>
-
 
+
-
time ls -f --color=none /nfs/test/dir.100000 > ls.txt
+
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
--------+-----------+-----------+-----------+-----------+----------
--------+-----------+-----------+-----------+-----------+----------
Line 175: Line 192:
  lookup |    2      |    2      |    2      |    2      |    2
  lookup |    2      |    2      |    2      |    2      |    2
readdir |  1389    |  1389    |  5883    |  1961    |  2005
readdir |  1389    |  1389    |  5883    |  1961    |  2005
 +
</pre>
-
time ls -lU --color=none /nfs/test/dir.100000 > ls.txt
+
===== time ls -lU --color=none /nfs/test/dir.100000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
--------+-----------+-----------+-----------+-----------+----------
--------+-----------+-----------+-----------+-----------+----------
Line 186: Line 205:
  lookup |  100002  |  100002  |    2      |  100002  |    2
  lookup |  100002  |  100002  |    2      |  100002  |    2
readdir |    1389  |    1389  |  5883    |    1961  |  5883
readdir |    1389  |    1389  |  5883    |    1961  |  5883
 +
</pre>
-
time ls -U --color=none /nfs/test/dir.100000 > ls.txt
+
===== time ls -U --color=none /nfs/test/dir.100000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
--------+-----------+-----------+-----------+-----------+----------
--------+-----------+-----------+-----------+-----------+----------
Line 197: Line 218:
  lookup |    2      |    2      |    2      |    2      |    2
  lookup |    2      |    2      |    2      |    2      |    2
readdir |  1389    |  1389    |  5883    |  1961    |  2005
readdir |  1389    |  1389    |  5883    |  1961    |  2005
 +
</pre>
-
time rm -rf /nfs/test/dir.100000 > ls.txt
+
===== time rm -rf /nfs/test/dir.100000 > ls.txt =====
 +
</pre>
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
  kernel |    36    |  36NORC  |    38    |  38RC    |  38NB
--------+-----------+-----------+-----------+-----------+----------
--------+-----------+-----------+-----------+-----------+----------
Line 210: Line 233:
statfs  |    2    |    2    |    1    |    2    |    2
statfs  |    2    |    2    |    1    |    2    |    2
readdir |    1386  |    1389  |    5883  |    1961  |    1961
readdir |    1386  |    1389  |    5883  |    1961  |    1961
 +
</pre>
 +
== 1,000,000 Files ==
-
1,000,000 Files
+
===== time ls -f --color=none /nfs/test/dir.1000000 > ls.txt =====
-
===============
+
<pre>
-
 
+
-
time ls -f --color=none /nfs/test/dir.1000000 > ls.txt
+
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
--------+------------+------------+------------+------------+-----------
Line 228: Line 251:
                                                               Readdir loop
                                                               Readdir loop
                                                                 detected
                                                                 detected
 +
</pre>
-
time ls -lU --color=none /nfs/test/dir.1000000 > ls.txt
+
===== time ls -lU --color=none /nfs/test/dir.1000000 > ls.txt =====
 +
</pre>
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
--------+------------+------------+------------+------------+-----------
Line 241: Line 266:
                                                               Readdir loop
                                                               Readdir loop
                                                                 detected
                                                                 detected
 +
</pre>
-
time ls -U --color=none /nfs/test/dir.1000000 > ls.txt
+
===== time ls -U --color=none /nfs/test/dir.1000000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
--------+------------+------------+------------+------------+-----------
Line 254: Line 281:
                                                               Readdir loop
                                                               Readdir loop
                                                                 detected
                                                                 detected
 +
</pre>
-
time rm -rf /nfs/test/dir.1000000 > ls.txt
+
===== time rm -rf /nfs/test/dir.1000000 > ls.txt =====
 +
<pre>
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
  kernel |    36    |  36NORC  |    38    |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
--------+------------+------------+------------+------------+-----------
Line 269: Line 298:
                                   Out of memory Out of memory Readdir loop
                                   Out of memory Out of memory Readdir loop
                                                                 detected
                                                                 detected
-
 
</pre>
</pre>

Revision as of 19:39, 4 April 2011

    36: Linux 2.6.36
36NORC: Linux 2.6.36 (without readdir cap)
    38: Linux 2.6.38
  38RC: Linux 2.6.38 (with readdir cap added back)
  38NB: Linux 2.6.38 (with Neil Brown's patch and loop detection)


Contents

100 Files

time ls -f --color=none /nfs/test/dir.100 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.054s | 0m0.104s | 0m0.049s | 0m0.022s | 0m0.013s
  user  | 0m0.003s | 0m0.003s | 0m0.000s | 0m0.000s | 0m0.000s
  sys   | 0m0.003s | 0m0.007s | 0m0.043s | 0m0.013s | 0m0.010s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |    2     |    2     |    6     |    6     |    6
time ls -lU --color=none /nfs/test/dir.100 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.124s | 0m0.088s | 0m0.096s | 0m0.041s | 0m0.021s
  user  | 0m0.003s | 0m0.000s | 0m0.003s | 0m0.010s | 0m0.007s
  sys   | 0m0.017s | 0m0.047s | 0m0.007s | 0m0.010s | 0m0.013s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |   102    |   102    |    2     |    2     |    2
readdir |    2     |    2     |    6     |    6     |    6
time ls -U --color=none /nfs/test/dir.100 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.206s | 0m0.014s | 0m0.097s | 0m0.038s | 0m0.014s
  user  | 0m0.003s | 0m0.000s | 0m0.000s | 0m0.000s | 0m0.003s
  sys   | 0m0.010s | 0m0.010s | 0m0.003s | 0m0.037s | 0m0.010s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |    2     |    2     |    6     |    6     |    6
time rm -rf /nfs/test/dir.100 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.044s | 0m0.038s | 0m0.042s | 0m0.751s | 0m0.038s
  user  | 0m0.000s | 0m0.003s | 0m0.007s | 0m0.007s | 0m0.000s
  sys   | 0m0.043s | 0m0.013s | 0m0.010s | 0m0.010s | 0m0.017s
access  |    13    |    12    |    13    |    11    |    12
getattr |    1     |    1     |    1     |    1     |    1
lookup  |   102    |   102    |   101    |   102    |   102
remove  |   101    |   101    |   101    |   101    |   101
statfs  |    1     |    1     |    0     |    1     |    1
readdir |    2     |    2     |    6     |    2     |    2


1,000 Files

time ls -f --color=none /nfs/test/dir.1000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.082s | 0m0.047s | 0m0.039s | 0m0.040s | 0m0.043s
  user  | 0m0.003s | 0m0.000s | 0m0.003s | 0m0.003s | 0m0.003s
  sys   | 0m0.007s | 0m0.020s | 0m0.017s | 0m0.017s | 0m0.027s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |    13    |    13    |    59    |    59    |    59
time ls -lU --color=none /nfs/test/dir.1000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.208s | 0m0.220s | 0m0.084s | 0m0.055s | 0m0.056s
  user  | 0m0.007s | 0m0.007s | 0m0.000s | 0m0.010s | 0m0.007s
  sys   | 0m0.067s | 0m0.170s | 0m0.023s | 0m0.043s | 0m0.047s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |   1002   |   1002   |    2     |    2     |    2
readdir |    13    |    13    |    59    |    59    |    59
time ls -U --color=none /nfs/test/dir.1000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.069s | 0m0.016s | 0m0.090s | 0m0.040s | 0m0.041s
  user  | 0m0.000s | 0m0.007s | 0m0.010s | 0m0.007s | 0m0.007s
  sys   | 0m0.003s | 0m0.003s | 0m0.000s | 0m0.030s | 0m0.033s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |    13    |    13    |    59    |    59    |    59
time rm -rf /nfs/test/dir.1000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.273s | 0m0.289s | 0m0.326s | 0m0.291s | 0m0.292s
  user  | 0m0.003s | 0m0.003s | 0m0.007s | 0m0.010s | 0m0.003s
  sys   | 0m0.083s | 0m0.133s | 0m0.147s | 0m0.087s | 0m0.110s
access  |    81    |    85    |    87    |    85    |    85
getattr |    1     |    1     |    1     |    1     |    1
lookup  |   1002   |   1002   |   1001   |   1002   |   1002
remove  |   1001   |   1001   |   1001   |   1001   |   1001
statfs  |    1     |    1     |    0     |    1     |    1
readdir |    13    |    13    |    59    |    20    |    20


10,000 Files

time ls -f --color=none /nfs/test/dir.10000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.242s | 0m0.295s | 0m0.226s | 0m0.101s | 0m0.143s
  user  | 0m0.013s | 0m0.000s | 0m0.010s | 0m0.010s | 0m0.003s
  sys   | 0m0.020s | 0m0.027s | 0m0.143s | 0m0.087s | 0m0.053s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |   139    |   139    |   589    |   197    |   241
time ls -lU --color=none /nfs/test/dir.10000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m1.677s | 0m1.624s | 0m0.446s | 0m1.481s | 0m0.322s
  user  | 0m0.093s | 0m0.060s | 0m0.023s | 0m0.060s | 0m0.027s
  sys   | 0m0.667s | 0m1.037s | 0m0.123s | 0m0.737s | 0m0.210s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |  10002   |  10002   |    2     |  10002   |    2
readdir |   139    |   139    |   589    |   197    |   589
time ls -U --color=none /nfs/test/dir.10000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m0.303s | 0m0.064s | 0m0.440s | 0m0.103s | 0m0.121s
  user  | 0m0.003s | 0m0.003s | 0m0.000s | 0m0.000s | 0m0.000s
  sys   | 0m0.017s | 0m0.020s | 0m0.057s | 0m0.097s | 0m0.120s
 access |    3     |    3     |    3     |    3     |    3
getattr |    1     |    1     |    1     |    1     |    1
 lookup |    2     |    2     |    2     |    2     |    2
readdir |   139    |   139    |   589    |   197    |   241
time rm -rf /nfs/test/dir.10000 > ls.txt
 kernel |    36    |  36NORC  |    38    |   38RC   |   38NB
--------+----------+----------+----------+----------+----------
  real  | 0m2.736s | 0m2.748s | 0m2.829s | 0m2.755s | 0m2.745s
  user  | 0m0.023s | 0m0.017s | 0m0.010s | 0m0.033s | 0m0.027s
  sys   | 0m0.880s | 0m0.833s | 0m0.943s | 0m0.850s | 0m0.927s
access  |   793    |   798    |   782    |   800    |   790
getattr |    1     |    1     |    1     |    1     |    1
lookup  |  10002   |  10002   |  10001   |  10002   |  10002
remove  |  10001   |  10001   |  10001   |  10001   |  10001
statfs  |    1     |    1     |    0     |    1     |    1
readdir |   139    |   139    |   589    |   197    |   197


100,000 Files

time ls -f --color=none /nfs/test/dir.100000 > ls.txt
 kernel |    36     |  36NORC   |    38     |   38RC    |   38NB
--------+-----------+-----------+-----------+-----------+----------
  real  | 0m3.841s  | 0m3.695s  | 0m2.185s  | 0m0.908s  | 0m0.757s
  user  | 0m0.037s  | 0m0.040s  | 0m0.027s  | 0m0.027s  | 0m0.030s
  sys   | 0m0.243s  | 0m0.250s  | 0m0.663s  | 0m0.290s  | 0m0.233s
 access |    3      |    3      |    3      |    3      |    3
getattr |    1      |    1      |    1      |    1      |    1
 lookup |    2      |    2      |    2      |    2      |    2
readdir |   1389    |   1389    |   5883    |   1961    |   2005
time ls -lU --color=none /nfs/test/dir.100000 > ls.txt
 kernel |    36     |  36NORC   |    38     |   38RC    |   38NB
--------+-----------+-----------+-----------+-----------+----------
  real  | 0m17.549s | 0m14.968s | 0m3.504s  | 0m13.852s | 0m2.845s
  user  | 0m00.577s | 0m00.623s | 0m0.273s  | 0m00.533s | 0m0.310s
  sys   | 0m06.993s | 0m06.686s | 0m1.447s  | 0m05.703s | 0m1.250s
 access |     3     |     3     |    3      |     3     |    3
getattr |     1     |     1     |    1      |     1     |    1
 lookup |   100002  |   100002  |    2      |   100002  |    2
readdir |    1389   |    1389   |   5883    |    1961   |   5883
time ls -U --color=none /nfs/test/dir.100000 > ls.txt
 kernel |    36     |  36NORC   |    38     |   38RC    |   38NB
--------+-----------+-----------+-----------+-----------+----------
  real  | 0m3.624s  | 0m0.687s  | 0m4.752s  | 0m0.927s  | 0m0.804s
  user  | 0m0.023s  | 0m0.023s  | 0m0.033s  | 0m0.023s  | 0m0.033s
  sys   | 0m0.250s  | 0m0.283s  | 0m0.773s  | 0m0.587s  | 0m0.403s
 access |    3      |    3      |    3      |    3      |    3
getattr |    1      |    1      |    1      |    1      |    1
 lookup |    2      |    2      |    2      |    2      |    2
readdir |   1389    |   1389    |   5883    |   1961    |   2005
time rm -rf /nfs/test/dir.100000 > ls.txt

</pre>

kernel |    36     |  36NORC   |    38     |   38RC    |   38NB

+-----------+-----------+-----------+-----------+----------
 real  | 0m29.257s | 0m29.468s | 0m29.975s | 0m29.804s | 0m32.157s
 user  | 0m00.260s | 0m00.207s | 0m00.183s | 0m00.243s | 0m00.197s
 sys   | 0m08.173s | 0m08.089s | 0m08.426s | 0m09.019s | 0m09.903s

access | 7816 | 7804 | 7730 | 7945 | 8466 getattr | 1 | 1 | 1 | 1 | 1 lookup | 100002 | 100002 | 100001 | 100002 | 100002 remove | 100001 | 100001 | 100001 | 100001 | 100001 statfs | 2 | 2 | 1 | 2 | 2 readdir | 1386 | 1389 | 5883 | 1961 | 1961 </pre>


1,000,000 Files

time ls -f --color=none /nfs/test/dir.1000000 > ls.txt
 kernel |     36     |   36NORC   |     38     |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
  real  | 2m07.105s  | 2m01.741s  |            |            | 0m0.257s
  user  | 0m00.287s  | 0m00.310s  |            |            | 0m0.010s
  sys   | 0m13.742s  | 0m13.732s  |  Looping   |  Looping   | 0m0.107s
 access |     3      |     3      |  readdir   |  readdir   |    3
getattr |     3      |     3      |    bug     |    bug     |    1
 lookup |     2      |     2      |            |            |    2
readdir |   13889    |   13889    |            |            |   690
                                                              Readdir loop
                                                                detected
time ls -lU --color=none /nfs/test/dir.1000000 > ls.txt

</pre>

kernel |     36     |   36NORC   |     38     |    38RC    |    38NB

+------------+------------+------------+------------+-----------
 real  | 4m45.495s  | 2m42.116s  | 4m25.823s  | 0m30.414s  | 0m11.363s
 user  | 0m06.263s  | 0m06.180s  | 0m03.213s  | 0m03.140s  | 0m00.397s
 sys   | 1m18.802s  | 1m16.625s  | 1m20.675s  | 0m18.479s  | 0m01.747s
access |     18     |     12     |     15     |     6      |     3

getattr | 1 | 1 | 1502 | 4 | 1

lookup |  1000002   |  1000002   |     4      |   42947    |     2

readdir | 13889 | 13889 | 542744 | 5436 | 7548

                                                             Readdir loop
                                                               detected

</pre>

time ls -U --color=none /nfs/test/dir.1000000 > ls.txt
 kernel |     36     |   36NORC   |     38     |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
  real  | 2m29.628s  | 0m18.127s  |            |            | 0m0.297s
  user  | 0m00.333s  | 0m00.363s  |            |            | 0m0.003s
  sys   | 0m13.636s  | 0m13.386s  |  Looping   |  Looping   | 0m0.233s
 access |     3      |     3      |  readdir   |  readdir   |    3
getattr |     3      |     1      |    bug     |    bug     |    1
 lookup |     2      |     2      |            |            |    2
readdir |   13889    |   13889    |            |            |   690
                                                              Readdir loop
                                                                detected
time rm -rf /nfs/test/dir.1000000 > ls.txt
 kernel |     36     |   36NORC   |     38     |    38RC    |    38NB
--------+------------+------------+------------+------------+-----------
  real  | 47m37.445s | 36m38.389s | 0m52.997s  | 0m11.633s  | 3m9.324s
  user  | 00m02.310s | 00m03.103s | 0m01.023s  | 0m01.110s  | 0m0.173s
  sys   | 02m37.440s | 03m51.485s | 0m21.605s  | 0m02.696s  | 0m8.803s
access  |    90944   |    110445  |     3      |     3      |   2581
getattr |      1     |      1     |     2      |     1      |    1
lookup  |   1000004  |   1000004  |     2      |     2      |  32945
remove  |   1000001  |   1000001  |     0      |     0      |  32945
statfs  |      2     |      2     |     0      |     0      |    2
readdir |    13889   |    13889   |   85044    |    1556    |   1290
                                  Out of memory Out of memory Readdir loop
                                                                detected
Personal tools