[Tux3] Test code: make-many-files.c

Daniel Phillips phillips at phunq.net
Thu Mar 5 02:15:25 PST 2009


Here is the test code Marcin found on the web.  It makes a three level
deep tree of directories containing 405,000 files, with 15,000 files
per directory.  Make the directory tree, and then rm -r.  Repeat.  Bad
things happen, especially if the partition is about 4GB, which is 1GB
less than the space required to complete the run.

After a successful rm -r (it doesn't always succeed) then umount takes
an unreasonably long time, which looks like an interaction between VFS
and Tux3 where inode table blocks are getting re-dirtied and written
out over and over again.  This may have something to so with an
explicit test in generic_flush_sb_inodes for whether it is the blockdev
being flushed, which no long functions for us since we no longer use
the blockdev, but a regular inode for our metadata blocks.  The
correct solution is probably to write our one inode flusher along the
lines of generic_flush_sb_inodes, but doing exactly what we need it to
do.

Regards,

Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: make-many-files.c
Type: text/x-csrc
Size: 777 bytes
Desc: not available
URL: <http://phunq.net/pipermail/tux3/attachments/20090305/0d16b2c0/attachment-0001.c>
-------------- next part --------------
_______________________________________________
Tux3 mailing list
Tux3 at tux3.org
http://mailman.tux3.org/cgi-bin/mailman/listinfo/tux3


More information about the Tux3 mailing list