From 2a075d57ab619ae5333c823cc260a722ab0c47fe Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 21 Jun 2018 14:38:08 +0200 Subject: pkg/report: allow to specify suppressions per OS Currently all (linux-specific) suppressions are hardcoded in mgrconfig. This is very wrong. Move them to pkg/report and allow to specify per OS. Add gvisor-specific suppressions. This required a bit of refactoring. Introduce mgrconfig.KernelObj finally. Make report.NewReporter and vm.Create accept mgrconfig directly instead of passing it as multiple scattered args. Remove tools/syz-parse and it always did the same as tools/syz-symbolize. Simplify global vars in syz-manager/cover.go. Create reporter eagerly in manager. Use sort.Slice more. Overall -90 lines removed. --- tools/syz-symbolize/symbolize.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'tools/syz-symbolize') diff --git a/tools/syz-symbolize/symbolize.go b/tools/syz-symbolize/symbolize.go index e683a5b01..9020d2fcc 100644 --- a/tools/syz-symbolize/symbolize.go +++ b/tools/syz-symbolize/symbolize.go @@ -11,6 +11,7 @@ import ( "runtime" "github.com/google/syzkaller/pkg/report" + "github.com/google/syzkaller/syz-manager/mgrconfig" ) var ( @@ -26,7 +27,12 @@ func main() { flag.PrintDefaults() os.Exit(1) } - reporter, err := report.NewReporter(*flagOS, "", *flagKernelSrc, *flagKernelObj, nil, nil) + cfg := &mgrconfig.Config{ + TargetOS: *flagOS, + KernelObj: *flagKernelObj, + KernelSrc: *flagKernelSrc, + } + reporter, err := report.NewReporter(cfg) if err != nil { fmt.Fprintf(os.Stderr, "failed to create reporter: %v\n", err) os.Exit(1) @@ -44,5 +50,8 @@ func main() { fmt.Fprintf(os.Stderr, "failed to symbolize report: %v\n", err) os.Exit(1) } + fmt.Printf("TITLE: %v\n", rep.Title) + fmt.Printf("CORRUPTED: %v\n", rep.Corrupted) + fmt.Printf("\n") os.Stdout.Write(rep.Report) } -- cgit mrf-deployment