From b0131d4eefe908aef51ea88be98dc8a926023371 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Fri, 20 Nov 2015 19:58:27 +0100 Subject: manager: add support for suppressions There are always some known bugs... --- manager/main.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'manager') diff --git a/manager/main.go b/manager/main.go index b539e1f5c..c67661767 100644 --- a/manager/main.go +++ b/manager/main.go @@ -10,6 +10,7 @@ import ( "fmt" "io/ioutil" "log" + "regexp" "strings" "github.com/google/syzkaller/sys" @@ -37,6 +38,7 @@ type Config struct { Params map[string]interface{} Enable_Syscalls []string Disable_Syscalls []string + Suppressions []string } func main() { @@ -62,6 +64,22 @@ func main() { EnabledSyscalls: enabledSyscalls, NoCover: cfg.Nocover, } + + // Add some builtin suppressions. + cfg.Suppressions = append(cfg.Suppressions, []string{ + "panic: failed to start executor binary", + "panic: executor failed: pthread_create failed", + "panic: failed to create temp dir", + "Out of memory: Kill process .* \\(syzkaller_fuzze\\)", + }...) + for _, s := range cfg.Suppressions { + re, err := regexp.Compile(s) + if err != nil { + fatalf("failed to compile suppression '%v': %v", s, err) + } + vmCfg.Suppressions = append(vmCfg.Suppressions, re) + } + var instances []vm.Instance for i := 0; i < cfg.Count; i++ { inst, err := vm.Create(cfg.Type, vmCfg, i) -- cgit mrf-deployment