From 40280fa54393449cf00247498fe0ed6485c75129 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Sat, 3 Sep 2016 12:35:16 +0200 Subject: [PATCH] syz-repro: fix false "not executing programs" --- tools/syz-execprog/execprog.go | 2 +- vm/vm.go | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/syz-execprog/execprog.go b/tools/syz-execprog/execprog.go index 5b761075..5eacbb31 100644 --- a/tools/syz-execprog/execprog.go +++ b/tools/syz-execprog/execprog.go @@ -83,7 +83,7 @@ func main() { idx := pos pos++ if idx%len(progs) == 0 && time.Since(lastPrint) > 5*time.Second { - log.Printf("executed %v programs\n", idx) + log.Printf("executed programs: %v", idx) lastPrint = time.Now() } posMu.Unlock() diff --git a/vm/vm.go b/vm/vm.go index d461289d..25d5010d 100644 --- a/vm/vm.go +++ b/vm/vm.go @@ -126,7 +126,10 @@ func MonitorExecution(outc <-chan []byte, errc <-chan error, local, needOutput b } case out := <-outc: output = append(output, out...) - if bytes.Index(output[matchPos:], []byte("executing program")) != -1 { + if bytes.Index(output[matchPos:], []byte("executing program")) != -1 { // syz-fuzzer output + lastExecuteTime = time.Now() + } + if bytes.Index(output[matchPos:], []byte("executed programs:")) != -1 { // syz-execprog output lastExecuteTime = time.Now() } if report.ContainsCrash(output[matchPos:]) {