From 45c54f755c6dee216beaeeef11e98a0375102712 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 18 Jun 2018 19:50:50 +0200 Subject: syz-manager: fix race during reporter init --- syz-manager/manager.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/syz-manager/manager.go b/syz-manager/manager.go index 16affa1f5..1f73c531d 100644 --- a/syz-manager/manager.go +++ b/syz-manager/manager.go @@ -45,6 +45,7 @@ type Manager struct { cfg *mgrconfig.Config vmPool *vm.Pool target *prog.Target + reporterInit sync.Once reporter report.Reporter crashdir string port int @@ -824,7 +825,7 @@ func (mgr *Manager) saveRepro(res *repro.Result, hub bool) { } func (mgr *Manager) getReporter() report.Reporter { - if mgr.reporter == nil { + mgr.reporterInit.Do(func() { <-allSymbolsReady var err error // TODO(dvyukov): we should introduce cfg.Kernel_Obj dir instead of Vmlinux. @@ -839,7 +840,7 @@ func (mgr *Manager) getReporter() report.Reporter { if err != nil { log.Fatalf("%v", err) } - } + }) return mgr.reporter } -- cgit mrf-deployment