diff options
| -rw-r--r-- | tools/syz-cover/syz-cover.go | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/tools/syz-cover/syz-cover.go b/tools/syz-cover/syz-cover.go index 8e4f79076..4cb28352e 100644 --- a/tools/syz-cover/syz-cover.go +++ b/tools/syz-cover/syz-cover.go @@ -35,6 +35,7 @@ import ( "cloud.google.com/go/civil" "github.com/google/syzkaller/pkg/cover" + "github.com/google/syzkaller/pkg/cover/backend" "github.com/google/syzkaller/pkg/mgrconfig" "github.com/google/syzkaller/pkg/osutil" "github.com/google/syzkaller/pkg/tool" @@ -119,6 +120,21 @@ func toolFileCover() { fmt.Println(details) } +func initModules(cfg *mgrconfig.Config) []*vminfo.KernelModule { + modules, err := backend.DiscoverModules(cfg.SysTarget, cfg.KernelObj, cfg.ModuleObj) + if err != nil { + tool.Fail(err) + } + if *flagModules != "" { + m, err := loadModules(*flagModules) + if err != nil { + tool.Fail(err) + } + modules = m + } + return modules +} + func main() { defer tool.Init()() if *flagForFile != "" { @@ -133,12 +149,7 @@ func main() { if err != nil { tool.Fail(err) } - var modules []*vminfo.KernelModule - if *flagModules != "" { - if modules, err = loadModules(*flagModules); err != nil { - tool.Fail(err) - } - } + modules := initModules(cfg) rg, err := cover.MakeReportGenerator(cfg, cfg.KernelSubsystem, modules, false) if err != nil { tool.Fail(err) |
