From 086ab166bbbf17d3f0a16c8b27f1995a70908b35 Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Tue, 14 May 2024 16:52:34 +0200 Subject: pkg/fuzzer/queue: retry inputs from crashed VMs Mark some requests as Important. The Retry() layer will give them one more chance even if they were not executed due to a VM crash. For now, the only important requests are related to triage, candidates and pkg/vminfo tests. Add tests for retry.go. --- pkg/vminfo/syscalls.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkg/vminfo') diff --git a/pkg/vminfo/syscalls.go b/pkg/vminfo/syscalls.go index 863c995bd..54678291f 100644 --- a/pkg/vminfo/syscalls.go +++ b/pkg/vminfo/syscalls.go @@ -252,7 +252,6 @@ func (ctx *checkContext) execRaw(calls []string, mode prog.DeserializeMode, root if err != nil { panic(fmt.Sprintf("failed to deserialize: %v\n%v", err, progStr)) } - // TODO: request that the program must be re-executed on the first failure. req := &queue.Request{ Prog: p, ExecOpts: &ipc.ExecOpts{ @@ -260,6 +259,7 @@ func (ctx *checkContext) execRaw(calls []string, mode prog.DeserializeMode, root ExecFlags: 0, SandboxArg: ctx.cfg.SandboxArg, }, + Important: true, } ctx.executor.Submit(req) res := req.Wait(ctx.ctx) -- cgit mrf-deployment