From a44473e4a4de4d1c3a192c87a41e7a2234898987 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Fri, 6 Nov 2015 23:15:40 +0100 Subject: add collide mode to executor In this mode we execute pairs of syscalls concurrently to provoke data races in kernel. --- tools/execprog/execprog.go | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'tools/execprog/execprog.go') diff --git a/tools/execprog/execprog.go b/tools/execprog/execprog.go index 234130710..eb915af87 100644 --- a/tools/execprog/execprog.go +++ b/tools/execprog/execprog.go @@ -23,6 +23,7 @@ var ( flagExecutor = flag.String("executor", "", "path to executor binary") flagProg = flag.String("prog", "", "file with a program to execute") flagThreaded = flag.Bool("threaded", false, "use threaded mode in executor") + flagCollide = flag.Bool("collide", false, "collide syscalls to provoke data races") flagDebug = flag.Bool("debug", true, "debug output from executor") flagStrace = flag.Bool("strace", false, "run executor under strace") flagCover = flag.String("cover", "", "collect coverage and write to the file") @@ -47,6 +48,9 @@ func main() { if *flagThreaded { flags |= ipc.FlagThreaded } + if *flagCollide { + flags |= ipc.FlagCollide + } if *flagDebug { flags |= ipc.FlagDebug } -- cgit mrf-deployment