diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2018-04-23 16:24:48 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2018-04-23 16:26:26 +0200 |
| commit | 8b5dcf17b0f9fa01f9a4f93c144c56fe3f7468f2 (patch) | |
| tree | cdd10049a2a59a3dc15fe215c4914243f5b22c26 /pkg/kernel | |
| parent | ff12bea91c22bba93d3ffc3034d813d686bc7eeb (diff) | |
syz-ci: clean kernel dir before patch test build
This leads to false errors when we are switching between gcc and clang:
kernel build failed: failed to run /usr/bin/make [make bzImage -j 32 CC=/syzkaller/clang-kmsan/bin/clang]: exit status 2
arch/x86/Makefile:184: *** Compiler lacks asm-goto support.. Stop.
Fixes #568
Diffstat (limited to 'pkg/kernel')
| -rw-r--r-- | pkg/kernel/kernel.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/pkg/kernel/kernel.go b/pkg/kernel/kernel.go index f1bdcdc83..7fe3ef6d8 100644 --- a/pkg/kernel/kernel.go +++ b/pkg/kernel/kernel.go @@ -52,6 +52,18 @@ func Build(dir, compiler, config string) error { return err } +func Clean(dir string) error { + cmd := osutil.Command("make", "distclean") + if err := osutil.Sandbox(cmd, true, true); err != nil { + return err + } + cmd.Dir = dir + if _, err := osutil.Run(10*time.Minute, cmd); err != nil { + return err + } + return nil +} + // CreateImage creates a disk image that is suitable for syzkaller. // Kernel is taken from kernelDir, userspace system is taken from userspaceDir. // If cmdlineFile is not empty, contents of the file are appended to the kernel command line. |
