From 9aad9b3bd1b57a05f7aa0a949a56f2bcb641c07e Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 3 Jul 2024 18:32:44 +0200 Subject: 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. --- syz-manager/manager.go | 10 ++++++---- 1 file 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 { -- cgit mrf-deployment