Re: [PATCH v2] checkpatch: report warning with files ending with blank lines

From: Christian Marangi

Date: Wed Oct 07 2026 - 13:55:21 EST


On Wed, Oct 07, 2026 at 10:50:30AM -0700, Joe Perches wrote:
> On Wed, 2026-10-07 at 18:52 +0200, Christian Marangi wrote:
> > On Wed, Oct 07, 2026 at 09:49:48AM -0700, Joe Perches wrote:
> > On Wed, 2026-10-07 at 14:28 +0200, Christian Marangi wrote:
> > > > On applying patch, git, depending on the default configuration, might
> > > > complain for any file having blank lines at end of file.
> > > I was not clear enough in my first reply.
> > >
> > > I meant that the test should be done only once, not
> > > for each line of the input.
> > >
> > > After the end of the process() loop of
> > >
> > foreach my $rawline (@rawlines) {
> > [...]
> > }
> > >
> > > a single test of $rawlines[-1] could be done.
> >
> > Yes I also was with that idea but then I quickly figure it out that we are
> > not testing if the .patch have blank line at EOF. But if the single file of
> > the patch have blank line at EOF.
> >
> > That can only be done in the process() while scanning each line as it does
> > progressively check new files in it.
> >
> > (unless I'm missing something)
>
> Dunno. Maybe I'm missing something but maybe something like this:
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index f424dafce5bce..d2f99127a9a9a 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -7850,6 +7850,13 @@ sub process {
> exit(0);
> }
>
> + # check if the last line is a blank line
> + if (($is_patch && $rawlines[-1] =~ /^\+\s*$/) ||
> + (!$is_patch && $rawlines[-1] =~ /^\s*$/)) {
> + WARN("LINE_SPACING",
> + "Blank lines at EOF are not good\n");
> + }
> +
> # In mailback mode only produce a report in the negative, for
> # things that appear to be patches.
> if ($mailback && ($clean == 1 || !$is_patch)) {

Yes if you think about this, this will read the last line of the .patch,
not the last line of a new file that will be generated by the .patch.

diff --git a/MAINTAINERS b/MAINTAINERS
index 70a11f2ff61d..0b9946c532af 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -785,3 +785,9 @@ S: Maintained
F: Documentation/devicetree/bindings/spi/airoha,en7581-snand.yaml
F: drivers/spi/spi-airoha-snfi.c

+AIROHA USB PHY DRIVER
+M: Christian Marangi <ansuelsmth@xxxxxxxxx>
+L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers)
+S: Maintained
+F: Documentation/devicetree/bindings/phy/airoha,an7581-usb-phy.yaml
+
--
2.55.0

It's to catch situation like this. Example for entire new file or adding
stuff at the end of a file, where a new line is introduced.

git am will complain about this.

--
Ansuel