diff options
| author | Aleksandr Nogikh <nogikh@google.com> | 2023-05-24 18:17:45 +0200 |
|---|---|---|
| committer | Aleksandr Nogikh <wp32pw@gmail.com> | 2023-05-25 11:45:51 +0200 |
| commit | 0513b3e670c9ff1eb79183e59e0f7d46ea76d243 (patch) | |
| tree | 48f32996d735a3f3feeb9357d7dce7df37d304ab | |
| parent | 0d9bcfef72eef7ccb5cf2320bbed5014385b59c2 (diff) | |
syz-manager: use 3 VMs per bug reproduction
As the process is single-threaded, the positive contribution of each
additional VM allocated for the repro generation process decreases.
For GCE VMs (mostly used by syzbot), the time to set up a VM instance
is usually less than 5 minutes. The time to run a single test that
doesn't crash the VM is ~ 10 minutes and actually most runs will be like
that.
Therefore we have plenty of time to set up a VM while another one is being
tested (on average).
Let's save resources and use 3 VMs instead of 4: one for running the
test, one is prepared in parallel and one speeds up processing in the case
of transient errors and for cases when a reproducer is able to crash a
VM quickly.
| -rw-r--r-- | syz-manager/manager.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/syz-manager/manager.go b/syz-manager/manager.go index 7c37dd0ac..baed2f793 100644 --- a/syz-manager/manager.go +++ b/syz-manager/manager.go @@ -328,7 +328,7 @@ type ReproResult struct { func (mgr *Manager) vmLoop() { log.Logf(0, "booting test machines...") log.Logf(0, "wait for the connection from test machine...") - instancesPerRepro := 4 + instancesPerRepro := 3 vmCount := mgr.vmPool.Count() maxReproVMs := vmCount - mgr.cfg.FuzzingVMs if instancesPerRepro > maxReproVMs && maxReproVMs > 0 { |
