From 18f846ca807cfc6df9c3da3c0ab08251277dfefb Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Wed, 1 Dec 2021 17:25:40 +0000 Subject: all: add the `rerun` call property To be able to collide specific syscalls more precisely, we need to repeat the process many times. Introduce the `rerun` call property, which instructs `syz-executor` to repeat the call the specified number of times. The intended use is: call1() (rerun: 100, async) call2() (rerun: 100) For now, assign rerun values randomly to consecutive pairs of calls, where the first one is async. --- prog/encodingexec_test.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'prog/encodingexec_test.go') diff --git a/prog/encodingexec_test.go b/prog/encodingexec_test.go index fe6a4dfb4..879aed893 100644 --- a/prog/encodingexec_test.go +++ b/prog/encodingexec_test.go @@ -465,14 +465,14 @@ func TestSerializeForExec(t *testing.T) { { `test() (fail_nth: 3) test() (fail_nth: 4) -test() (async) +test() (async, rerun: 10) `, []uint64{ - execInstrSetProps, 3, 0, + execInstrSetProps, 3, 0, 0, callID("test"), ExecNoCopyout, 0, - execInstrSetProps, 4, 0, + execInstrSetProps, 4, 0, 0, callID("test"), ExecNoCopyout, 0, - execInstrSetProps, 0, 1, + execInstrSetProps, 0, 1, 10, callID("test"), ExecNoCopyout, 0, execInstrEOF, }, @@ -481,17 +481,17 @@ test() (async) { Meta: target.SyscallMap["test"], Index: ExecNoCopyout, - Props: CallProps{3, false}, + Props: CallProps{3, false, 0}, }, { Meta: target.SyscallMap["test"], Index: ExecNoCopyout, - Props: CallProps{4, false}, + Props: CallProps{4, false, 0}, }, { Meta: target.SyscallMap["test"], Index: ExecNoCopyout, - Props: CallProps{0, true}, + Props: CallProps{0, true, 10}, }, }, }, -- cgit mrf-deployment