aboutsummaryrefslogtreecommitdiffstats
path: root/syz-manager/manager.go
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2024-07-03 18:32:44 +0200
committerDmitry Vyukov <dvyukov@google.com>2024-07-10 10:37:15 +0000
commit9aad9b3bd1b57a05f7aa0a949a56f2bcb641c07e (patch)
tree2023d1a8b8c4a04e998de86eeb6d589b35547a08 /syz-manager/manager.go
parenta7a1cea58a31ffafc3d6473559349a52d46c33a0 (diff)
syz-manager: don't minimize corpus during triage
During corpus triage it would happen very often since we are actively adding inputs, and presumably the persistent corpus was reasonably minimial, and we don't use it for fuzzing yet.
Diffstat (limited to 'syz-manager/manager.go')
-rw-r--r--syz-manager/manager.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/syz-manager/manager.go b/syz-manager/manager.go
index 69a285d42..78229eb07 100644
--- a/syz-manager/manager.go
+++ b/syz-manager/manager.go
@@ -1391,6 +1391,12 @@ func (mgr *Manager) addNewCandidates(candidates []fuzzer.Candidate) {
}
func (mgr *Manager) minimizeCorpusLocked() {
+ // Don't minimize corpus until we have triaged all inputs from it.
+ // During corpus triage it would happen very often since we are actively adding inputs,
+ // and presumably the persistent corpus was reasonably minimial, and we don't use it for fuzzing yet.
+ if mgr.phase < phaseTriagedCorpus {
+ return
+ }
currSize := mgr.corpus.StatProgs.Val()
if currSize <= mgr.lastMinCorpus*103/100 {
return
@@ -1434,10 +1440,6 @@ func (mgr *Manager) minimizeCorpusLocked() {
log.Logf(0, "coverage for %v has saturated, not accepting more inputs", call)
}
- // Don't minimize persistent corpus until fuzzers have triaged all inputs from it.
- if mgr.phase < phaseTriagedCorpus {
- return
- }
mgr.corpusDBMu.Lock()
defer mgr.corpusDBMu.Unlock()
for key := range mgr.corpusDB.Records {