Mauricio Faria de Oliveira: > By generic do you specifically mean the xfstests/tests/generic test-suite, > or just any filesystem testing tools in general?
Both of them. > Would you suggest to test more than just the combination of one read-write > branch on top of a read-only branch, or is that good enough for most > purposes? It depends on the use-case. I mean what you plan to use aufs. If it is much simpler one, then overlayfs or something will be a good option. One RW + one RO is the simplest combination generally. But if you want, you can add the branches upto 128 (by default), and there are more branch attributes other than RW and RO. Of course, you can make aufs with only one branch, but I don't think it meaningful obviously. > Ok, got it. If you have a description handy of the tools/configuration > that you run for testing, it would be great to know, just to make sure I > can catch a breakage before sending it to break on your tests. :-) I am afraid it won't help you, but I'll try here. - I have hundreds of test scripts, and it taks about 10 hours to run them all, including various combinations of branch filesystems. The words "this version of aufs is fully tested" in aufs web page means that I run all tests for that version, and "less tested" means I run them with only one branch combination which takes abount 1 hour. - Most of the test scripts are written by me, some are posted to this ML. The test scripts execute several binary commands. Most of these commands are generic unix commands, but some are written by me or posted from users. Here is a sample from my test scripts. It tests readdir (using libau.so hook )with bind-mount under aufs. You may find a similar script in xftests, ltp or something. ---------------------------------------- #!/bin/sh set -e CWD=$PWD Module=aufs RO=${RO:-ext2} RW=${RW:-ext3} #Opts= base=$HOME/transparent/lktr base=$HOME/transparent/test cd $base . ./prolog.sh . ./libgen.sh f() { set -x LD_PRELOAD=libau.so LIBAU=all /tmp/bind-readdir $@ /tmp/bind-readdir $@ find $@ -printf '%i %p\n' set +x } mkdir -p $tmp.etc > $tmp.etc/hosts f $tmp.etc sudo mount -o bind /etc/hosts $tmp.etc/hosts f $tmp.etc sudo umount $tmp.etc/hosts Plain MountUnion mkdir -p $tmp.tA/tB echo tmp > $tmp.tA/tB/fC echo tmp > $tmp.tA/tB/fD #set -x cd $Root/u mkdir -p dirA/dirB echo au > dirA/dirB/fileC echo au > dirA/dirB/fileD f dirA dirA/dirB sudo mount -o bind $tmp.tA dirA f dirA dirA/tB sudo umount dirA sudo mount -o bind $tmp.tA/tB/fC dirA/dirB/fileC f dirA dirA/dirB sudo umount dirA/dirB/fileC set +x rm -fr $tmp.* cd Umount ---------------------------------------- J. R. Okajima