From 3cfcaa1bed770dce1e4d55a41c168a9a56f931a5 Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Tue, 11 Apr 2023 11:05:18 +0200 Subject: pkg/subsystem: optionally disable monthly reports For some subsystems (e.g. `kernel`) such reports just don't make much sense, since there are too many incorrectly classified bugs in there. Make it possible to exclude such subsystems from periodic reminders. --- pkg/subsystem/entities.go | 2 ++ pkg/subsystem/linux/rules.go | 7 +++++++ pkg/subsystem/linux/subsystems.go | 1 + pkg/subsystem/lists/linux.go | 1 + 4 files changed, 11 insertions(+) (limited to 'pkg/subsystem') diff --git a/pkg/subsystem/entities.go b/pkg/subsystem/entities.go index 457e57a3e..338447ad4 100644 --- a/pkg/subsystem/entities.go +++ b/pkg/subsystem/entities.go @@ -10,6 +10,8 @@ type Subsystem struct { Lists []string Maintainers []string Parents []*Subsystem + // If NoReminders is set to true, there should be no monthly reports for the subsystem. + NoReminders bool } // ReachableParents returns the set of subsystems reachable from the current one. diff --git a/pkg/subsystem/linux/rules.go b/pkg/subsystem/linux/rules.go index 3f2149af2..d44451692 100644 --- a/pkg/subsystem/linux/rules.go +++ b/pkg/subsystem/linux/rules.go @@ -12,6 +12,8 @@ type customRules struct { // These subsystems need to be extracted even without mailing lists. // Key is the subsystem name, value is the list of raw names in MAINTAINERS. extraSubsystems map[string][]string + // For these subsystems we do not generate monthly reminders. + noReminders map[string]struct{} } var ( @@ -88,5 +90,10 @@ var ( "kernfs": {"KERNFS"}, "udf": {"UDF FILESYSTEM"}, }, + noReminders: map[string]struct{}{ + // Many misclassified bugs end up in `kernel`, so there's no sense + // in generating monthly reports for it. + "kernel": {}, + }, } ) diff --git a/pkg/subsystem/linux/subsystems.go b/pkg/subsystem/linux/subsystems.go index 880b1fcaf..1d1d84ed2 100644 --- a/pkg/subsystem/linux/subsystems.go +++ b/pkg/subsystem/linux/subsystems.go @@ -130,6 +130,7 @@ func (ctx *linuxCtx) applyExtraRules(list []*subsystem.Subsystem) { } for _, entry := range list { entry.Syscalls = ctx.extraRules.subsystemCalls[entry.Name] + _, entry.NoReminders = ctx.extraRules.noReminders[entry.Name] } } diff --git a/pkg/subsystem/lists/linux.go b/pkg/subsystem/lists/linux.go index c097c16ca..7716b0c20 100644 --- a/pkg/subsystem/lists/linux.go +++ b/pkg/subsystem/lists/linux.go @@ -2149,6 +2149,7 @@ func subsystems_linux() []*Subsystem { {IncludeRegexp: "^net/vmw_vsock/vmci_transport[^/]*$"}, {IncludeRegexp: "axp[128]"}, }, + NoReminders: true, } kernfs = Subsystem{ -- cgit mrf-deployment