aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorEthan Graham <ethangraham@google.com>2025-09-16 09:17:04 +0000
committerAleksandr Nogikh <nogikh@google.com>2025-09-22 09:11:54 +0000
commita13ba2b663b7d2761d9ff6cf1165fa4f2f64aa2c (patch)
treefcc71568c619712751a8456048797982333a4fa7 /pkg
parent6feac83014c7863b431feaca50d89e1abbf2f054 (diff)
pkg/fuzzer: use a smaller number of recommended calls for KFuzzTest
Introduce a KFuzzTest mode for the fuzzer so that a smaller number of recommended calls can be used if we are fuzzing KFuzzTest targets. Signed-off-by: Ethan Graham <ethangraham@google.com>
Diffstat (limited to 'pkg')
-rw-r--r--pkg/fuzzer/fuzzer.go8
-rw-r--r--pkg/fuzzer/job.go2
2 files changed, 9 insertions, 1 deletions
diff --git a/pkg/fuzzer/fuzzer.go b/pkg/fuzzer/fuzzer.go
index 0c0119e71..fdfe95518 100644
--- a/pkg/fuzzer/fuzzer.go
+++ b/pkg/fuzzer/fuzzer.go
@@ -72,6 +72,13 @@ func NewFuzzer(ctx context.Context, cfg *Config, rnd *rand.Rand,
return f
}
+func (fuzzer *Fuzzer) RecommendedCalls() int {
+ if fuzzer.Config.ModeKFuzzTest {
+ return prog.RecommendedCallsKFuzzTest
+ }
+ return prog.RecommendedCalls
+}
+
type execQueues struct {
triageCandidateQueue *queue.DynamicOrderer
candidateQueue *queue.PlainQueue
@@ -214,6 +221,7 @@ type Config struct {
FetchRawCover bool
NewInputFilter func(call string) bool
PatchTest bool
+ ModeKFuzzTest bool
}
func (fuzzer *Fuzzer) triageProgCall(p *prog.Prog, info *flatrpc.CallInfo, call int, triage *map[int]*triageCall) {
diff --git a/pkg/fuzzer/job.go b/pkg/fuzzer/job.go
index 7f1e47bf6..bbac544f6 100644
--- a/pkg/fuzzer/job.go
+++ b/pkg/fuzzer/job.go
@@ -43,7 +43,7 @@ func (ji *JobInfo) ID() string {
func genProgRequest(fuzzer *Fuzzer, rnd *rand.Rand) *queue.Request {
p := fuzzer.target.Generate(rnd,
- prog.RecommendedCalls,
+ fuzzer.RecommendedCalls(),
fuzzer.ChoiceTable())
return &queue.Request{
Prog: p,