aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-07-03 13:09:05 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-07-03 13:09:05 +0200
commit6e569755ce2f0efcad474398871ff75693e770fc (patch)
tree70d8a22233e459e576cf840c83a9eaad8f988ef5 /pkg
parentf30c14bfec4b49e528a756b28cc010925e2f286b (diff)
pkg/mgrconfig: extend proc param description
Diffstat (limited to 'pkg')
-rw-r--r--pkg/mgrconfig/config.go4
-rw-r--r--pkg/mgrconfig/load.go6
2 files changed, 6 insertions, 4 deletions
diff --git a/pkg/mgrconfig/config.go b/pkg/mgrconfig/config.go
index 69df2a801..fc63bb20d 100644
--- a/pkg/mgrconfig/config.go
+++ b/pkg/mgrconfig/config.go
@@ -69,7 +69,9 @@ type Config struct {
Syzkaller string `json:"syzkaller"`
// Number of parallel test processes inside of each VM.
- // 1 by default, 4 or 8 would be reasonable numbers too.
+ // Allowed values are 1-32, recommended range is ~4-8, default value is 6.
+ // It should be chosen to saturate CPU inside of the VM and maximize number of test executions,
+ // but to not oversubscribe CPU and memory too severe to not cause OOMs and false hangs/stalls.
Procs int `json:"procs"`
// Type of sandbox to use during fuzzing:
diff --git a/pkg/mgrconfig/load.go b/pkg/mgrconfig/load.go
index fc0f6b650..ce710b96b 100644
--- a/pkg/mgrconfig/load.go
+++ b/pkg/mgrconfig/load.go
@@ -62,7 +62,7 @@ func defaultValues() *Config {
Reproduce: true,
Sandbox: "none",
RPC: ":0",
- Procs: 1,
+ Procs: 6,
}
}
@@ -104,8 +104,8 @@ func Complete(cfg *Config) error {
if err := completeBinaries(cfg); err != nil {
return err
}
- if cfg.Procs < 1 || cfg.Procs > 32 {
- return fmt.Errorf("bad config param procs: '%v', want [1, 32]", cfg.Procs)
+ if cfg.Procs < 1 || cfg.Procs > prog.MaxPids {
+ return fmt.Errorf("bad config param procs: '%v', want [1, %v]", cfg.Procs, prog.MaxPids)
}
switch cfg.Sandbox {
case "none", "setuid", "namespace", "android":