diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2024-05-31 18:24:18 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2024-06-03 15:04:36 +0000 |
| commit | dbc22b60dbf270f3238040e88eed24bab0b990cf (patch) | |
| tree | ac8133d5121dac220ba800d2aea0e279ae496d33 /pkg/fuzzer/job.go | |
| parent | 060bb1abe2d1541db9f1a47b8affdf219eb90b57 (diff) | |
pkg/fuzzer: don't keep whole call info for triage jobs
It can be large and we need just errno. Store just it.
Diffstat (limited to 'pkg/fuzzer/job.go')
| -rw-r--r-- | pkg/fuzzer/job.go | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/pkg/fuzzer/job.go b/pkg/fuzzer/job.go index 505feb28c..ef89f1f31 100644 --- a/pkg/fuzzer/job.go +++ b/pkg/fuzzer/job.go @@ -57,7 +57,7 @@ func mutateProgRequest(fuzzer *Fuzzer, rnd *rand.Rand) *queue.Request { type triageJob struct { p *prog.Prog call int - info *flatrpc.CallInfo + errno int32 newSignal signal.Signal flags ProgFlags fuzzer *Fuzzer @@ -147,7 +147,7 @@ func (job *triageJob) deflake(exec func(*queue.Request, ProgFlags) *queue.Result stop = true return } - if !reexecutionSuccess(result.Info, job.info, job.call) { + if !reexecutionSuccess(result.Info, job.errno, job.call) { // The call was not executed or failed. continue } @@ -197,7 +197,7 @@ func (job *triageJob) minimize(newSignal signal.Signal) (stop bool) { return false } info := result.Info - if !reexecutionSuccess(info, job.info, call1) { + if !reexecutionSuccess(info, job.errno, call1) { // The call was not executed or failed. continue } @@ -211,14 +211,14 @@ func (job *triageJob) minimize(newSignal signal.Signal) (stop bool) { return stop } -func reexecutionSuccess(info *flatrpc.ProgInfo, oldInfo *flatrpc.CallInfo, call int) bool { +func reexecutionSuccess(info *flatrpc.ProgInfo, oldErrno int32, call int) bool { if info == nil || len(info.Calls) == 0 { return false } if call != -1 { // Don't minimize calls from successful to unsuccessful. // Successful calls are much more valuable. - if oldInfo.Error == 0 && info.Calls[call].Error != 0 { + if oldErrno == 0 && info.Calls[call].Error != 0 { return false } return len(info.Calls[call].Signal) != 0 |
