Draft btrfs testcase

JB jb.1234abcd at gmail.com
Sun Jun 12 08:12:38 UTC 2011


JB <jb.1234abcd <at> gmail.com> writes:

> ...

These are random ideas for your btrfs test plan.

Various tests.
- test small and large files, also directories
  - sequential vs random read/write
  - cp, mv, rm
- do not forget to use 'sync' where appropriate in your tests
  sync(1)
- with and without cache (to catch behavior and differences that are not
  representative of the fs itself)
  http://linux-mm.org/Drop_Caches
    # sync && echo n > /proc/sys/vm/drop_caches
    where n=0,1,...
  Do simple tests (cp, mv, rm) with sufficiently large files.
- throughput (small, medium, large files)
- fragmentation
  NOTE: this is/was the point of distress for btrfs - see web links:
        https://lkml.org/lkml/2010/6/18/144
       
http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4-vs-xfs-vs-btrfs.html
  - turn off any online filesystem defragmentation to prevent interference
  - test as in
    https://lkml.org/lkml/2010/6/18/144
  - other test
    Let's make a 100 GB partition harddisk half full with files (small,
    medium, and big).
    Turn off read cache:
      - echo n > /proc/sys/vm/drop_caches
    Read many and different big files (never the same: see prevent kernel
    read caching):
    (100-600 MB) off the drive and time it:
      $ time cat bigfile1 > /dev/null
      $ time cat bigfile2 > /dev/null
      ...
      If the time range is wide, it is indicative of fs files fragmentation.

Reliability test.
- power down disks on a busy filesystem and see what's left
- quality of repair and recovery tools
- consider what ZFS testers did:
  http://blogs.oracle.com/bill/entry/zfs_and_the_all_singing
  http://hub.opensolaris.org/bin/view/Community+Group+zfs/zfstestsuite

Btrfs and NFS.
- perform client/server tests on nfs-mounted btrfs file systems

System entries.
- cfdisk, fdisk, parted, gparted, etc
- ...

Testing tools.
- Linux Test Tools
  Filesystems
  http://ltp.sourceforge.net/tooltable.php
- Linux Filesystem Testing Tools
  http://linuxpoison.blogspot.com/2008/07/linux-filesystem-testing-tools.html
- Linux Filesystem Benchmark using Blogbench
  http://linuxpoison.blogspot.com/2010/08/linux-filesystem-benchmark-using.html

JB




More information about the test mailing list