From 7b3084af2ea815515ea35f9904ee38b5991e58d5 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 20 May 2019 19:15:53 +0200 Subject: [PATCH] syz-manager: don't repro non-leaks on leak instance Leak checking is too slow to reproduce other bugs. --- syz-manager/manager.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/syz-manager/manager.go b/syz-manager/manager.go index fa1d9f0d..f92b5172 100644 --- a/syz-manager/manager.go +++ b/syz-manager/manager.go @@ -23,6 +23,7 @@ import ( "github.com/google/syzkaller/pkg/db" "github.com/google/syzkaller/pkg/gce" "github.com/google/syzkaller/pkg/hash" + "github.com/google/syzkaller/pkg/host" "github.com/google/syzkaller/pkg/instance" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/mgrconfig" @@ -673,6 +674,11 @@ func (mgr *Manager) needLocalRepro(crash *Crash) bool { if !mgr.cfg.Reproduce || crash.Corrupted { return false } + if mgr.checkResult.Features[host.FeatureLeakChecking].Enabled && + crash.Type != report.MemoryLeak { + // Leak checking is very slow, don't bother reproducing other crashes. + return false + } sig := hash.Hash([]byte(crash.Title)) dir := filepath.Join(mgr.crashdir, sig.String()) if osutil.IsExist(filepath.Join(dir, "repro.prog")) {