diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-11-20 19:58:27 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-11-20 19:58:27 +0100 |
| commit | b0131d4eefe908aef51ea88be98dc8a926023371 (patch) | |
| tree | dde3663897c60bf2f2a0343ba54d6702482686da /manager | |
| parent | 11b28f516665846164a5a0b90a0a5e8918063d28 (diff) | |
manager: add support for suppressions
There are always some known bugs...
Diffstat (limited to 'manager')
| -rw-r--r-- | manager/main.go | 18 |
1 files changed, 18 insertions, 0 deletions
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) |
