Re: [PATCH] get_maintainer: add email addresses from dts files

From: Joe Perches
Date: Sat Feb 11 2023 - 11:36:57 EST


On Sat, 2023-02-11 at 13:14 +0100, Krzysztof Kozlowski wrote:
> The DTS/DTSI files represent hardware description for Linux kernel,
> which is necessary to properly recognize and configure hardware by
> Linux. DTS is usually created by people having the actual hardware and
> having interest in keeping it in good shape. Such people can provide
> review (they might have board schematics) and testing. Unfortunately
> they mostly do not appear in MAINTAINERS file. Adding per-DTS entries
> to MAINTAINERS would quickly make it bloated (hundreds of new per-DTS
> entries).
>
> On the other hand there is no point in CC-ing every Copyright email
> appearing in files, because it might be outdated. Add new in-file
> pattern for storing maintainers dedicated to specific boards:
>
> Maintainer: John Smith <email>
>
> Suggested-by: Joe Perches <joe@xxxxxxxxxxx>
> Suggested-by: Shawn Guo <shawnguo@xxxxxxxxxx>
> Reviewed-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
>
> ---
>
> This is rework of earlier approach:
> Link: https://lore.kernel.org/r/20210809080204.8381-1-shawnguo@xxxxxxxxxx

Why the rework? I think the older one is much simpler.

I believe I forwarded the older one to Andrew Morton awhile back.
I'll check to see what happened to it.


> ---
> scripts/get_maintainer.pl | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index ab123b498fd9..f02a2a80c3bc 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -445,6 +445,17 @@ sub maintainers_in_file {
> my @poss_addr = $text =~ m$[A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> push(@file_emails, clean_file_emails(@poss_addr));
> }
> +
> + # Match "Maintainer: email" entries only in DTS sources
> + if (-f $file && ($email_file_emails || $file =~ /\.dtsi?$/)) {
> + open(my $f, '<', $file)
> + or die "$P: Can't open $file: $!\n";
> + my $text = do { local($/) ; <$f> };
> + close($f);
> +
> + my @poss_addr = $text =~ m$Maintainer: [A-Za-zÀ-ÿ\"\' \,\.\+-]*\s*[\,]*\s*[\(\<\{]{0,1}[A-Za-z0-9_\.\+-]+\@[A-Za-z0-9\.-]+\.[A-Za-z0-9]+[\)\>\}]{0,1}$g;
> + push(@file_emails, clean_file_emails(@poss_addr));
> + }
> }
>
> #