aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/instance/instance.go
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-05-11 12:57:07 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-05-12 11:38:18 +0200
commit39449875b60fb5a6e5ab53a1b2231ab6b29506a7 (patch)
tree8e695846dbf7b29b5c82a472209d8122f943919a /pkg/instance/instance.go
parentc017728b48d0996df3928156621be26383186a27 (diff)
syz-ci: don't assume kernel config is called .config
.config is linux-ism. We have a convention that kernel config is copied to kernel.config file. Use it.
Diffstat (limited to 'pkg/instance/instance.go')
-rw-r--r--pkg/instance/instance.go13
1 files changed, 10 insertions, 3 deletions
diff --git a/pkg/instance/instance.go b/pkg/instance/instance.go
index 30d0cbe4b..a84e9c89c 100644
--- a/pkg/instance/instance.go
+++ b/pkg/instance/instance.go
@@ -82,15 +82,22 @@ func (env *Env) BuildSyzkaller(repo, commit string) error {
return nil
}
-func (env *Env) BuildKernel(compilerBin, userspaceDir, cmdlineFile, sysctlFile string, kernelConfig []byte) error {
+func (env *Env) BuildKernel(compilerBin, userspaceDir, cmdlineFile, sysctlFile string, kernelConfig []byte) (string, error) {
cfg := env.cfg
imageDir := filepath.Join(cfg.Workdir, "image")
if err := build.Image(cfg.TargetOS, cfg.TargetVMArch, cfg.Type,
cfg.KernelSrc, imageDir, compilerBin, userspaceDir,
cmdlineFile, sysctlFile, kernelConfig); err != nil {
- return err
+ return "", err
+ }
+ if err := SetConfigImage(cfg, imageDir, true); err != nil {
+ return "", err
+ }
+ kernelConfigFile := filepath.Join(imageDir, "kernel.config")
+ if !osutil.IsExist(kernelConfigFile) {
+ kernelConfigFile = ""
}
- return SetConfigImage(cfg, imageDir, true)
+ return kernelConfigFile, nil
}
func SetConfigImage(cfg *mgrconfig.Config, imageDir string, reliable bool) error {