aboutsummaryrefslogtreecommitdiffstats
path: root/syz-cluster/workflow
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2025-04-11 14:08:10 +0200
committerAleksandr Nogikh <nogikh@google.com>2025-04-15 08:18:26 +0000
commit81b407fe4e14e1e40fa060509157143e51ec1739 (patch)
treeccaf1229e9ce952bbb832d81c9c5d0501ebdb0de /syz-cluster/workflow
parent0bd6db418098e2d98a2edf948b41410d3d9f9e70 (diff)
pkg/manager: wait until corpus is triaged for diff fuzzing
Track the right moment to start bug reproductions more exactly: 1) Either once 90% of the corpus is triaged (*). 2) Or once we are past 50% of the time dedicated for fuzzing. Whatever happens earlier. (*) The last percents are usually quite slow and they bring much less covered PCs that all the previous ones.
Diffstat (limited to 'syz-cluster/workflow')
-rw-r--r--syz-cluster/workflow/fuzz-step/main.go11
1 files changed, 6 insertions, 5 deletions
diff --git a/syz-cluster/workflow/fuzz-step/main.go b/syz-cluster/workflow/fuzz-step/main.go
index f81a1791c..e5671e4fd 100644
--- a/syz-cluster/workflow/fuzz-step/main.go
+++ b/syz-cluster/workflow/fuzz-step/main.go
@@ -64,7 +64,7 @@ func main() {
// the final test result back.
runCtx, cancel := context.WithTimeout(context.Background(), d)
defer cancel()
- err = run(runCtx, client, artifactsDir)
+ err = run(runCtx, client, d, artifactsDir)
status := api.TestPassed // TODO: what about TestFailed?
if err != nil && !errors.Is(err, context.DeadlineExceeded) {
app.Errorf("the step failed: %v", err)
@@ -76,7 +76,7 @@ func main() {
}
}
-func run(baseCtx context.Context, client *api.Client, artifactsDir string) error {
+func run(baseCtx context.Context, client *api.Client, timeout time.Duration, artifactsDir string) error {
series, err := client.GetSessionSeries(baseCtx, *flagSession)
if err != nil {
return fmt.Errorf("failed to query the series info: %w", err)
@@ -124,9 +124,10 @@ func run(baseCtx context.Context, client *api.Client, artifactsDir string) error
})
eg.Go(func() error {
return manager.RunDiffFuzzer(ctx, base, patched, manager.DiffFuzzerConfig{
- Debug: false,
- PatchedOnly: bugs,
- ArtifactsDir: artifactsDir,
+ Debug: false,
+ PatchedOnly: bugs,
+ ArtifactsDir: artifactsDir,
+ MaxTriageTime: timeout / 2,
})
})
const (