diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2019-03-22 10:37:50 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2019-03-22 12:00:50 +0100 |
| commit | 4d9d915eae5984d25a3e7f557106935546a6563f (patch) | |
| tree | 146efb3a39477941637826d146382335c2cb256e | |
| parent | 8f92118cb6b42da17d255fa6f0009194b36d5a80 (diff) | |
syz-ci: fix filling of kernel commit in bisection jobs
There is a bit of a mess: dashboard expects the start commit
in build info, but syz-ci sends the resulting cause commit.
Moreover for inconclusive bisection the commit is not filled at all.
Fill start commit in build info on start.
Update #501
| -rw-r--r-- | dashboard/app/jobs.go | 24 | ||||
| -rw-r--r-- | dashboard/dashapi/dashapi.go | 26 | ||||
| -rw-r--r-- | syz-ci/jobs.go | 13 |
3 files changed, 32 insertions, 31 deletions
diff --git a/dashboard/app/jobs.go b/dashboard/app/jobs.go index 7bff92b85..6eae2b65c 100644 --- a/dashboard/app/jobs.go +++ b/dashboard/app/jobs.go @@ -394,17 +394,19 @@ func createJobResp(c context.Context, job *Job, jobKey *datastore.Key) (*dashapi return nil, true, nil } resp := &dashapi.JobPollResp{ - ID: jobID, - Manager: job.Manager, - KernelRepo: job.KernelRepo, - KernelBranch: job.KernelBranch, - KernelCommit: build.KernelCommit, - KernelConfig: kernelConfig, - SyzkallerCommit: build.SyzkallerCommit, - Patch: patch, - ReproOpts: crash.ReproOpts, - ReproSyz: reproSyz, - ReproC: reproC, + ID: jobID, + Manager: job.Manager, + KernelRepo: job.KernelRepo, + KernelBranch: job.KernelBranch, + KernelCommit: build.KernelCommit, + KernelCommitTitle: build.KernelCommitTitle, + KernelCommitDate: build.KernelCommitDate, + KernelConfig: kernelConfig, + SyzkallerCommit: build.SyzkallerCommit, + Patch: patch, + ReproOpts: crash.ReproOpts, + ReproSyz: reproSyz, + ReproC: reproC, } switch job.Type { case JobTestPatch: diff --git a/dashboard/dashapi/dashapi.go b/dashboard/dashapi/dashapi.go index d53786476..238e1742a 100644 --- a/dashboard/dashapi/dashapi.go +++ b/dashboard/dashapi/dashapi.go @@ -126,18 +126,20 @@ type JobPollReq struct { } type JobPollResp struct { - ID string - Type JobType - Manager string - KernelRepo string - KernelBranch string - KernelCommit string - KernelConfig []byte - SyzkallerCommit string - Patch []byte - ReproOpts []byte - ReproSyz []byte - ReproC []byte + ID string + Type JobType + Manager string + KernelRepo string + KernelBranch string + KernelCommit string + KernelCommitTitle string + KernelCommitDate time.Time + KernelConfig []byte + SyzkallerCommit string + Patch []byte + ReproOpts []byte + ReproSyz []byte + ReproC []byte } type JobDoneReq struct { diff --git a/syz-ci/jobs.go b/syz-ci/jobs.go index e842fb8f2..fa0fb56c3 100644 --- a/syz-ci/jobs.go +++ b/syz-ci/jobs.go @@ -296,7 +296,6 @@ func (jp *JobProcessor) process(job *Job) *dashapi.JobDoneReq { OS: mgr.managercfg.TargetOS, Arch: mgr.managercfg.TargetArch, VMArch: mgr.managercfg.TargetVMArch, - KernelCommit: "[unknown]", SyzkallerCommit: req.SyzkallerCommit, }, } @@ -307,10 +306,15 @@ func (jp *JobProcessor) process(job *Job) *dashapi.JobDoneReq { resp.Build.CompilerID = mgr.compilerID resp.Build.KernelRepo = req.KernelRepo resp.Build.KernelBranch = req.KernelBranch + resp.Build.KernelCommit = "[unknown]" case dashapi.JobBisectCause, dashapi.JobBisectFix: mgrcfg.Name += "-bisect-job" resp.Build.KernelRepo = mgr.mgrcfg.Repo resp.Build.KernelBranch = mgr.mgrcfg.Branch + resp.Build.KernelCommit = req.KernelCommit + resp.Build.KernelCommitTitle = req.KernelCommitTitle + resp.Build.KernelCommitDate = req.KernelCommitDate + resp.Build.KernelConfig = req.KernelConfig default: err := fmt.Errorf("bad job type %v", req.Type) job.resp.Error = []byte(err.Error()) @@ -401,13 +405,6 @@ func (jp *JobProcessor) bisect(job *Job, mgrcfg *mgrconfig.Config) error { Date: com.Date, }) } - if len(commits) == 1 { - com := commits[0] - resp.Build.KernelCommit = com.Hash - resp.Build.KernelCommitTitle = com.Title - resp.Build.KernelCommitDate = com.Date - resp.Build.KernelConfig = req.KernelConfig - } if rep != nil { resp.CrashTitle = rep.Title resp.CrashReport = rep.Report |
