diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2020-12-06 10:08:26 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-12-13 18:56:36 +0100 |
| commit | 3e671cc5ce6612d8a67495a107df5ff8091113ea (patch) | |
| tree | 2cd9b52eb5a63d3672ae5276c8456492430d687f /syz-manager | |
| parent | bca53db974f570410921f59b8c2c59a3d263cb44 (diff) | |
pkg/cover: split into ELF-dependent/independent parts
Diffstat (limited to 'syz-manager')
| -rw-r--r-- | syz-manager/covfilter.go | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/syz-manager/covfilter.go b/syz-manager/covfilter.go index 60d42bc37..83ac93228 100644 --- a/syz-manager/covfilter.go +++ b/syz-manager/covfilter.go @@ -13,7 +13,6 @@ import ( "sort" "strconv" - "github.com/google/syzkaller/pkg/cover" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/mgrconfig" "github.com/google/syzkaller/pkg/osutil" @@ -28,8 +27,7 @@ func createCoverageFilter(cfg *mgrconfig.Config) (string, map[uint32]uint32, err if err := initCover(cfg.SysTarget, cfg.KernelObj, cfg.KernelSrc, cfg.KernelBuildSrc); err != nil { return "", nil, err } - symbols := reportGenerator.GetSymbols() - if err := initFilesFuncs(pcs, filter.Files, filter.Functions, symbols); err != nil { + if err := initFilesFuncs(pcs, filter.Files, filter.Functions); err != nil { return "", nil, err } } @@ -50,7 +48,7 @@ func createCoverageFilter(cfg *mgrconfig.Config) (string, map[uint32]uint32, err return filename, pcs, nil } -func initFilesFuncs(pcs map[uint32]uint32, files, funcs []string, symbols []cover.Symbol) error { +func initFilesFuncs(pcs map[uint32]uint32, files, funcs []string) error { funcsRegexp, err := compileRegexps(funcs) if err != nil { return err @@ -61,7 +59,7 @@ func initFilesFuncs(pcs map[uint32]uint32, files, funcs []string, symbols []cove } fileDedup := make(map[string]bool) used := make(map[*regexp.Regexp][]string) - for _, sym := range symbols { + for _, sym := range reportGenerator.Symbols { matched := false for _, re := range funcsRegexp { if re.MatchString(sym.Name) { @@ -71,11 +69,12 @@ func initFilesFuncs(pcs map[uint32]uint32, files, funcs []string, symbols []cove } } for _, re := range filesRegexp { - if re.MatchString(sym.File) { + file := sym.Unit.Name + if re.MatchString(file) { matched = true - if !fileDedup[sym.File] { - fileDedup[sym.File] = true - used[re] = append(used[re], sym.File) + if !fileDedup[file] { + fileDedup[file] = true + used[re] = append(used[re], file) } break } |
