Skip to content

Commit 530e80f

Browse files
committed
syz-ci: rename bench file on all syz-manager restarts
ManagerCmd transparently restarts the instance in case of crashes, so we should better be cleaning up the bench file within its loop, rather than in manager.go.
1 parent 1b70f4d commit 530e80f

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

syz-ci/manager.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -472,13 +472,12 @@ func (mgr *Manager) restartManager() {
472472
bin := filepath.FromSlash("syzkaller/current/bin/syz-manager")
473473
logFile := filepath.Join(mgr.currentDir, "manager.log")
474474
benchFile := filepath.Join(mgr.currentDir, benchFileName)
475-
os.Remove(benchFile) // or else syz-manager will complain
476475

477476
args := []string{"-config", cfgFile, "-vv", "1", "-bench", benchFile}
478477
if mgr.debug {
479478
args = append(args, "-debug")
480479
}
481-
mgr.cmd = NewManagerCmd(mgr.name, logFile, mgr.Errorf, bin, args...)
480+
mgr.cmd = NewManagerCmd(mgr.name, logFile, benchFile, mgr.Errorf, bin, args...)
482481
mgr.lastRestarted = time.Now()
483482
}
484483

syz-ci/managercmd.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
type ManagerCmd struct {
2020
name string
2121
log string
22+
bench string
2223
errorf Errorf
2324
bin string
2425
args []string
@@ -31,10 +32,11 @@ type Errorf func(msg string, args ...interface{})
3132
// name - name for logging.
3233
// log - manager log file with stdout/stderr.
3334
// bin/args - process binary/args.
34-
func NewManagerCmd(name, log string, errorf Errorf, bin string, args ...string) *ManagerCmd {
35+
func NewManagerCmd(name, log, bench string, errorf Errorf, bin string, args ...string) *ManagerCmd {
3536
mc := &ManagerCmd{
3637
name: name,
3738
log: log,
39+
bench: bench,
3840
errorf: errorf,
3941
bin: bin,
4042
args: args,
@@ -75,6 +77,7 @@ func (mc *ManagerCmd) loop() {
7577
if time.Since(started) > restartPeriod {
7678
started = time.Now()
7779
osutil.Rename(mc.log, mc.log+".old")
80+
osutil.Rename(mc.bench, mc.bench+".old") // or else syz-manager will complain
7881
logfile, err := os.Create(mc.log)
7982
if err != nil {
8083
mc.errorf("failed to create manager log: %v", err)

0 commit comments

Comments
 (0)