Stephen Warren
2013-Mar-07 00:28 UTC
[Nouveau] [PATCH V2 1/3] get_maintainer: create filename-only regex match type
From: Stephen Warren <swarren at nvidia.com>
Create a new N: entry type in MAINTAINERS which performs a regex match
against filenames; either those extracted from patch +++ or --- lines,
or those specified on the command-line using the -f option.
This provides the same benefits as using a K: regex option to match a
set of filenames (see commit eb90d08 "get_maintainer: allow keywords to
match filenames"), but without the disadvantage that "random"
file
content, such as comments, will ever match the regex.
Suggested-by: Joe Perches <joe at perches.com>
Signed-off-by: Stephen Warren <swarren at nvidia.com>
---
v2: Corrected typo in MAINTAINERS documentation
---
MAINTAINERS | 3 +++
scripts/get_maintainer.pl | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 9561658..c9b1e37 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -90,6 +90,9 @@ Descriptions of section entries:
F: drivers/net/* all files in drivers/net, but not below
F: */net/* all files in "any top level directory"/net
One pattern per line. Multiple F: lines acceptable.
+ N: Files and directories with regex patterns.
+ N: [^a-z]tegra all files whose patch contains the word tegra
+ One pattern per line. Multiple N: lines acceptable.
X: Files and directories that are NOT maintained, same rules as F:
Files exclusions are tested before file matches.
Can be useful for excluding a specific subdirectory, for instance:
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index ce4cc83..27dc5cb 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -611,7 +611,7 @@ sub get_maintainers {
$hash{$tvi} = $value_pd;
}
}
- } elsif ($type eq 'K') {
+ } elsif ($type eq 'K' || $type eq 'N') {
if ($file =~ m/$value/x) {
$hash{$tvi} = 0;
}
--
1.7.10.4
Stephen Warren
2013-Mar-07 00:29 UTC
[Nouveau] [PATCH V2 2/3] MAINTAINERS: tegra: match related files using N: not K:
From: Stephen Warren <swarren at nvidia.com> This causes the regex to be applied to filenames only, and not patch or file content (such as comments). This should prevent e.g. drivers/gpu/drm/nouveau/nv50_display.c from matching this entry. Reported-by: Marcin Slusarz <marcin.slusarz at gmail.com> Signed-off-by: Stephen Warren <swarren at nvidia.com> --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index c9b1e37..2d02ab5 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -7851,7 +7851,7 @@ L: linux-tegra at vger.kernel.org Q: http://patchwork.ozlabs.org/project/linux-tegra/list/ T: git git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git S: Supported -K: (?i)[^a-z]tegra +N: [^a-z]tegra TEHUTI ETHERNET DRIVER M: Andy Gospodarek <andy at greyhouse.net> -- 1.7.10.4
Stephen Warren
2013-Mar-07 00:29 UTC
[Nouveau] [PATCH V2 3/3] get_maintainer: prevent keywords from matching filenames
From: Stephen Warren <swarren at nvidia.com>
This reverts most of eb90d08 "get_maintainer: allow keywords to match
filenames"; all except the parts that are required to implement the new
N: entry type.
The rationale is that it's better to have K: match just patch or file
content as it previously did, and N: match just filenames, rather than
have K: math all three cases. This gives more explicit control, and
removes the temptation to use K: for filenames, and then have those
keywords accidentally match unexpected patch or file content.
Signed-off-by: Stephen Warren <swarren at nvidia.com>
---
v2: New patch.
---
MAINTAINERS | 9 ++++-----
scripts/get_maintainer.pl | 2 +-
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 2d02ab5..e68a07a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -100,13 +100,12 @@ Descriptions of section entries:
X: net/ipv6/
matches all files in and below net excluding net/ipv6/
K: Keyword perl extended regex pattern to match content in a
- patch or file, or an affected filename. For instance:
+ patch or file. For instance:
K: of_get_profile
- matches patch or file content, or filenames, that contain
- "of_get_profile"
+ matches patches or files that contain "of_get_profile"
K: \b(printk|pr_(info|err))\b
- matches patch or file content, or filenames, that contain one or
- more of the words printk, pr_info or pr_err
+ matches patches or files that contain one or more of the words
+ printk, pr_info or pr_err
One regex pattern per line. Multiple K: lines acceptable.
Note: For the hard of thinking, this list is meant to remain in alphabetical
diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index 27dc5cb..5e4fb14 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -611,7 +611,7 @@ sub get_maintainers {
$hash{$tvi} = $value_pd;
}
}
- } elsif ($type eq 'K' || $type eq 'N') {
+ } elsif ($type eq 'N') {
if ($file =~ m/$value/x) {
$hash{$tvi} = 0;
}
--
1.7.10.4
Joe Perches
2013-Mar-07 00:30 UTC
[Nouveau] [PATCH V2 3/3] get_maintainer: prevent keywords from matching filenames
On Wed, 2013-03-06 at 17:29 -0700, Stephen Warren wrote:> From: Stephen Warren <swarren at nvidia.com> > > This reverts most of eb90d08 "get_maintainer: allow keywords to match > filenames"; all except the parts that are required to implement the new > N: entry type.Just combine patches 1 and 3 into a single patch.
Stephen Warren
2013-Mar-07 00:34 UTC
[Nouveau] [PATCH V2 3/3] get_maintainer: prevent keywords from matching filenames
On 03/06/2013 05:30 PM, Joe Perches wrote:> On Wed, 2013-03-06 at 17:29 -0700, Stephen Warren wrote: >> From: Stephen Warren <swarren at nvidia.com> >> >> This reverts most of eb90d08 "get_maintainer: allow keywords to match >> filenames"; all except the parts that are required to implement the new >> N: entry type. > > Just combine patches 1 and 3 into a single patch.That would break bisectability; using MAINTAINERS after applying a squashed 1+3 but without patch 2 applied would not operate as desired.