diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2025-04-10 11:34:39 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2025-04-10 17:07:48 +0000 |
| commit | 1bc60a19f725612590947493424fef2e314bd044 (patch) | |
| tree | 3be2c55ec8612d430845327602d832d6eb01b479 /pkg/cover | |
| parent | 2d9fa31cf7abaddf944824814053e67b4d5c478e (diff) | |
tools/syz-declextract: add interface coverage info
Add coverage percent for kernel interfaces.
The current data is generated with Mar coverage report
on kernel commit 1e7857b28020ba57ca7fdafae7ac855ba326c697.
Diffstat (limited to 'pkg/cover')
| -rw-r--r-- | pkg/cover/heatmap.go | 2 | ||||
| -rw-r--r-- | pkg/cover/html.go | 13 |
2 files changed, 9 insertions, 6 deletions
diff --git a/pkg/cover/heatmap.go b/pkg/cover/heatmap.go index 20c7ac4c1..efde4fed4 100644 --- a/pkg/cover/heatmap.go +++ b/pkg/cover/heatmap.go @@ -91,7 +91,7 @@ func (thm *templateHeatmapRow) prepareDataFor(pageColumns []pageColumnTarget, sk var dateCoverage int64 tp := pageColumn.TimePeriod if thm.instrumented[tp] != 0 { - dateCoverage = percent(thm.covered[tp], thm.instrumented[tp]) + dateCoverage = Percent(thm.covered[tp], thm.instrumented[tp]) } thm.Coverage = append(thm.Coverage, dateCoverage) thm.Tooltips = append(thm.Tooltips, fmt.Sprintf("Instrumented:\t%d blocks\nCovered:\t%d blocks", diff --git a/pkg/cover/html.go b/pkg/cover/html.go index 1b2d4d024..88f30abb1 100644 --- a/pkg/cover/html.go +++ b/pkg/cover/html.go @@ -877,7 +877,7 @@ func addFunctionCoverage(file *file, data *templateData) { percentage := "" coveredTotal += function.covered if function.covered > 0 { - percentage = fmt.Sprintf("%v%%", percent(function.covered, function.pcs)) + percentage = fmt.Sprintf("%v%%", Percent(function.covered, function.pcs)) TotalInCoveredFunc += function.pcs } else { percentage = "---" @@ -891,7 +891,7 @@ func addFunctionCoverage(file *file, data *templateData) { buf.WriteString("<span class='hover'>SUMMARY") percentInCoveredFunc := "" if TotalInCoveredFunc > 0 { - percentInCoveredFunc = fmt.Sprintf("%v%%", percent(coveredTotal, TotalInCoveredFunc)) + percentInCoveredFunc = fmt.Sprintf("%v%%", Percent(coveredTotal, TotalInCoveredFunc)) } else { percentInCoveredFunc = "---" } @@ -915,21 +915,24 @@ func processDir(dir *templateDir) { for _, f := range dir.Files { dir.Total += f.Total dir.Covered += f.Covered - f.Percent = percent(f.Covered, f.Total) + f.Percent = Percent(f.Covered, f.Total) } for _, child := range dir.Dirs { processDir(child) dir.Total += child.Total dir.Covered += child.Covered } - dir.Percent = percent(dir.Covered, dir.Total) + dir.Percent = Percent(dir.Covered, dir.Total) if dir.Covered == 0 { dir.Dirs = nil dir.Files = nil } } -func percent[T int | int64](covered, total T) T { +func Percent[T int | int64](covered, total T) T { + if total == 0 { + return 0 + } f := math.Ceil(float64(covered) / float64(total) * 100) if f == 100 && covered < total { f = 99 |
