1$FreeBSD$ 2 3This is the FreeBSD kernel stress test suite. The purpose is to crash the 4computer, by stressing selected parts of the kernel, thus exposing inadequate 5error handling. 6 7Do not run the syscall test as root. 8 9To build and use: 10 11make 12sh ./run.sh 13 14The "run.sh" script accepts an optional configuration file in order to test specific areas. 15For example: 16 17./run.sh vfs.sh 18 19 20To run all of the different test scenarios type: 21 22./run.sh -a 23 24You may have to tune the stress test to make sure that your test box run low 25on resources. For example: 26 27INCARNATIONS=125 ./run.sh 28 29The following sub-directories exists: 30 31./doc Documentation 32./include Include file for building the test programs in ./testcases 33./lib Common support files for the test programs 34./misc Various test scenarios. Mostly regression tests 35./testcases Test programs 36./tools Supplementary tools used in stress testing 37 38The name stress2 indicates that this is the second generation of the Kernel Stress Test Suite. 39The first version (stress) was based mostly on scripts. 40 41 4220090120: des@ pointed out it would be nice to be able to set the 43 random seed in order to be able to reproduce errors in time. 44 A test of this show that the occurrence of panics are still 45 non-deterministic even with a fixed seed. The known broken 46 unionfs was used to test this: 47 http://people.freebsd.org/~pho/stress/log/marcus006.txt. 48 First panic occurred after 29 loops and the second after 8 49 with a seed of "123". 50 51 The randomness that is provided by lack of synchronization 52 with timer interrupt, disk block layout and disk access 53 latencies caused by platter and heads speed changes, disk 54 firmware internal operations, and so on are _much_ bigger 55 then the undeterminism caused by the non-repeatable random 56 seed. 57 58 Anyway, I have always view the this issue as only a slight 59 inconvenience. 60