Treewide frequency of various checkpatch messages

Joe Perches joe at perches.com
Mon Mar 10 18:48:50 UTC 2014


On Mon, 2014-03-10 at 09:50 -0700, Greg KH wrote:
> On Mon, Mar 10, 2014 at 09:02:26AM -0700, Joe Perches wrote:
> > On Fri, 2014-03-07 at 01:30 -0800, Joe Perches wrote:
> > > On Fri, 2014-03-07 at 10:54 +0300, Dan Carpenter wrote:
> >  (a question about a new message warning of a missing
> >   blank line between variable declaration blocks and
> >   code in a function)
> > > > How many warnings does this generate does this generate when you run it
> > > > across the whole tree?
> > > A lot.
> > 
> > Turns out it's 20,210 and it's the 14th
> > most common checkpatch message type.
> > 
> >     14    20210  WARNING:SPACING: Missing a blank line after declarations
> 
> I think it's still worthwhile to clean up.

Maybe.

Luckily, <smile> I don't have to deal with the
patches that would be generated by this message.

Some people are going to view patches for this as
useless noise.

Couple of things:

It's kind of interesting how the messages vary by
subsystem.  Let me know if you want any breakdowns.

And there are a small number of false positives for
this "Missing a blank line" test with declarations
like:

	typedef *foo;
	DECLARE_BITMAP(foo);
	__DECL_REG(foo);
	LIST_HEAD(foo);

So there could be a minor improvement to the test.

I looked at some of the results using:

This sort of match stands out a bit:

---> arch/tile/lib/spinlock_32.c:68:
{
        u32 iterations = 0;
        while (arch_spin_is_locked(lock))
                delay_backoff(iterations++);
}

Instances like this may be fine, but adding blank
lines to very short functions with a single
declaration just adds to the overall line count.

I've no strong opinion of the need to write code
like:

{
        u32 iterations = 0;

        while (arch_spin_is_locked(lock))
                delay_backoff(iterations++);
}





More information about the devel mailing list