diff options
| -rw-r--r-- | pkg/mgrconfig/load.go | 20 | ||||
| -rw-r--r-- | tools/syz-symbolize/symbolize.go | 12 |
2 files changed, 19 insertions, 13 deletions
diff --git a/pkg/mgrconfig/load.go b/pkg/mgrconfig/load.go index a4cbc8914..f02f3c59c 100644 --- a/pkg/mgrconfig/load.go +++ b/pkg/mgrconfig/load.go @@ -105,15 +105,8 @@ func Complete(cfg *Config) error { if err := checkSSHParams(cfg); err != nil { return err } + cfg.CompleteKernelDirs() - cfg.KernelObj = osutil.Abs(cfg.KernelObj) - if cfg.KernelSrc == "" { - cfg.KernelSrc = cfg.KernelObj // assume in-tree build by default - } - cfg.KernelSrc = osutil.Abs(cfg.KernelSrc) - if cfg.KernelBuildSrc == "" { - cfg.KernelBuildSrc = cfg.KernelSrc - } if cfg.HubClient != "" && (cfg.Name == "" || cfg.HubAddr == "" || cfg.HubKey == "") { return fmt.Errorf("hub_client is set, but name/hub_addr/hub_key is empty") } @@ -126,6 +119,17 @@ func Complete(cfg *Config) error { return nil } +func (cfg *Config) CompleteKernelDirs() { + cfg.KernelObj = osutil.Abs(cfg.KernelObj) + if cfg.KernelSrc == "" { + cfg.KernelSrc = cfg.KernelObj // assume in-tree build by default + } + cfg.KernelSrc = osutil.Abs(cfg.KernelSrc) + if cfg.KernelBuildSrc == "" { + cfg.KernelBuildSrc = cfg.KernelSrc + } +} + func checkSSHParams(cfg *Config) error { if cfg.SSHUser == "" { return fmt.Errorf("bad config syzkaller param: ssh user is empty") diff --git a/tools/syz-symbolize/symbolize.go b/tools/syz-symbolize/symbolize.go index 2dc814505..5f88e68cd 100644 --- a/tools/syz-symbolize/symbolize.go +++ b/tools/syz-symbolize/symbolize.go @@ -17,8 +17,8 @@ import ( var ( flagOS = flag.String("os", runtime.GOOS, "target os") flagArch = flag.String("arch", runtime.GOARCH, "target arch") - flagKernelSrc = flag.String("kernel_src", ".", "path to kernel sources") flagKernelObj = flag.String("kernel_obj", ".", "path to kernel build/obj dir") + flagKernelSrc = flag.String("kernel_src", "", "path to kernel sources (defaults to kernel_obj)") ) func main() { @@ -29,11 +29,13 @@ func main() { os.Exit(1) } cfg := &mgrconfig.Config{ - TargetOS: *flagOS, - TargetArch: *flagArch, - KernelObj: *flagKernelObj, - KernelSrc: *flagKernelSrc, + TargetOS: *flagOS, + TargetArch: *flagArch, + TargetVMArch: *flagArch, + KernelObj: *flagKernelObj, + KernelSrc: *flagKernelSrc, } + cfg.CompleteKernelDirs() reporter, err := report.NewReporter(cfg) if err != nil { fmt.Fprintf(os.Stderr, "failed to create reporter: %v\n", err) |
