diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-11-23 14:31:59 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-11-23 17:08:53 +0100 |
| commit | 83e92abf5062ec127ee48d5100e0108e17008f3a (patch) | |
| tree | 92e2599c8bec25e2db41900bdd8b149169ec72ed /tools | |
| parent | 22660a2f952229e802761ee046f3e2582d4b0c68 (diff) | |
tools/stress: support missing flags
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/stress/stress.go | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/tools/stress/stress.go b/tools/stress/stress.go index db201e690..88fc2a3c8 100644 --- a/tools/stress/stress.go +++ b/tools/stress/stress.go @@ -25,6 +25,10 @@ var ( flagOutput = flag.Bool("output", false, "print executor output to console") flagDebug = flag.Bool("debug", false, "executor debug output") flagProcs = flag.Int("procs", runtime.NumCPU(), "number of parallel processes") + flagThreaded = flag.Bool("threaded", true, "use threaded mode in executor") + flagCollide = flag.Bool("collide", true, "collide syscalls to provoke data races") + flagNobody = flag.Bool("nobody", false, "impersonate into nobody") + flagTimeout = flag.Duration("timeout", 5*time.Second, "executor timeout") failedRe = regexp.MustCompile("runtime error: |panic: |Panic: ") ) @@ -32,14 +36,23 @@ var ( func main() { flag.Parse() corpus := readCorpus() - flags := ipc.FlagThreaded | ipc.FlagCollide | ipc.FlagDropPrivs + var flags uint64 + if *flagThreaded { + flags |= ipc.FlagThreaded + } + if *flagCollide { + flags |= ipc.FlagCollide + } + if *flagNobody { + flags |= ipc.FlagDropPrivs + } if *flagDebug { flags |= ipc.FlagDebug } for p := 0; p < *flagProcs; p++ { go func() { - env, err := ipc.MakeEnv(*flagExecutor, 4*time.Second, flags) + env, err := ipc.MakeEnv(*flagExecutor, 10*time.Second, flags) if err != nil { failf("failed to create execution environment: %v", err) } |
