aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/fuzzer/queue/queue.go
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2025-08-21 15:53:47 +0200
committerAleksandr Nogikh <nogikh@google.com>2025-08-26 13:14:55 +0000
commit8a71a7acb8f7d65994b038587cf2e6d35ed4e5b8 (patch)
tree24fda25d6b78072cee36f6f7a253dfbd0d789d84 /pkg/fuzzer/queue/queue.go
parentbf27483f963359281b2d9b6d6efd36289f82e282 (diff)
pkg/fuzzer/queue: copy more field in Tee
Copy everything that might be important during execution on other kernels/VM pools. Add a test to verify it. The functionality is actively used to clone requests in the diff fuzzer.
Diffstat (limited to 'pkg/fuzzer/queue/queue.go')
-rw-r--r--pkg/fuzzer/queue/queue.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/pkg/fuzzer/queue/queue.go b/pkg/fuzzer/queue/queue.go
index ca2d76092..20509dcb7 100644
--- a/pkg/fuzzer/queue/queue.go
+++ b/pkg/fuzzer/queue/queue.go
@@ -566,7 +566,13 @@ func (t *tee) Next() *Request {
return nil
}
t.queue.Submit(&Request{
- Prog: req.Prog.Clone(),
+ // It makes little sense to copy other fields if these requests
+ // are to be executed in a different environment.
+ Type: req.Type,
+ ExecOpts: req.ExecOpts,
+ Prog: req.Prog.Clone(),
+ BinaryFile: req.BinaryFile,
+ GlobPattern: req.GlobPattern,
})
return req
}