aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/bisect
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-10-22 15:41:03 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-10-22 15:41:03 +0200
commit084e388155d4ea60d54e44b90cd10eef660a5b76 (patch)
tree5a072ff66df7d401257da468a8529b172ab9b285 /pkg/bisect
parenta2bdbd8c37841cc507a2ad59f25d90d6467e5858 (diff)
pkg/vcs: make EnvForCommit return full compiler path
All callers of EnvForCommit need the compiler path, so move this logic into EnvForCommit to avoid duplication. Also simplifies tests because test impl can now return an empty compiler (which should be unused).
Diffstat (limited to 'pkg/bisect')
-rw-r--r--pkg/bisect/bisect.go7
-rw-r--r--pkg/bisect/bisect_test.go4
2 files changed, 3 insertions, 8 deletions
diff --git a/pkg/bisect/bisect.go b/pkg/bisect/bisect.go
index 904be4b53..afe770965 100644
--- a/pkg/bisect/bisect.go
+++ b/pkg/bisect/bisect.go
@@ -259,12 +259,11 @@ func (env *env) test() (vcs.BisectResult, *vcs.Commit, *report.Report, error) {
if err != nil {
return 0, nil, nil, err
}
- bisectEnv, err := env.bisecter.EnvForCommit(current.Hash, cfg.Kernel.Config)
+ bisectEnv, err := env.bisecter.EnvForCommit(cfg.BinDir, current.Hash, cfg.Kernel.Config)
if err != nil {
return 0, nil, nil, err
}
- compiler := filepath.Join(cfg.BinDir, bisectEnv.Compiler, "bin", "gcc")
- compilerID, err := build.CompilerIdentity(compiler)
+ compilerID, err := build.CompilerIdentity(bisectEnv.Compiler)
if err != nil {
return 0, nil, nil, err
}
@@ -274,7 +273,7 @@ func (env *env) test() (vcs.BisectResult, *vcs.Commit, *report.Report, error) {
cfg.Manager.Type, cfg.Manager.KernelSrc); err != nil {
return 0, nil, nil, fmt.Errorf("kernel clean failed: %v", err)
}
- _, err = env.inst.BuildKernel(compiler, cfg.Kernel.Userspace,
+ _, err = env.inst.BuildKernel(bisectEnv.Compiler, cfg.Kernel.Userspace,
cfg.Kernel.Cmdline, cfg.Kernel.Sysctl, bisectEnv.KernelConfig)
env.buildTime += time.Since(buildStart)
if err != nil {
diff --git a/pkg/bisect/bisect_test.go b/pkg/bisect/bisect_test.go
index 472fde289..7a1d02a90 100644
--- a/pkg/bisect/bisect_test.go
+++ b/pkg/bisect/bisect_test.go
@@ -11,7 +11,6 @@ import (
"strconv"
"testing"
- "github.com/google/syzkaller/pkg/build"
"github.com/google/syzkaller/pkg/instance"
"github.com/google/syzkaller/pkg/mgrconfig"
"github.com/google/syzkaller/pkg/report"
@@ -72,9 +71,6 @@ func (env *testEnv) Test(numVMs int, reproSyz, reproOpts, reproC []byte) ([]erro
// commit.
func TestBisectCause(t *testing.T) {
t.Parallel()
- build.CompilerIdentity = func(_ string) (string, error) {
- return "unused-compiler-identity", nil
- }
baseDir, err := ioutil.TempDir("", "syz-git-test")
if err != nil {
t.Fatal(err)