2008-11-18 22:20:57

by Vegard Nossum

[permalink] [raw]
Subject: gitwatch: RSS feed of checkpatch+coccinelle against new commits in mainline

Hi,

I've written a script that follows the mainline git repository and
runs checkpatch against all new commits. The result is available as an
RSS stream:

http://kernel.org/~vegard/gitwatch.rss

Only commits with warnings or errors are shown. Files that change are
also searched for known/frequent coding errors using Coccinelle and a
selection of the semantic patches found on the Coccinelle website.


Vegard

--
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
-- E. W. Dijkstra, EWD1036


2008-11-20 08:26:56

by Andy Whitcroft

[permalink] [raw]
Subject: Re: gitwatch: RSS feed of checkpatch+coccinelle against new commits in mainline

On Tue, Nov 18, 2008 at 11:20:48PM +0100, Vegard Nossum wrote:
> Hi,
>
> I've written a script that follows the mainline git repository and
> runs checkpatch against all new commits. The result is available as an
> RSS stream:
>
> http://kernel.org/~vegard/gitwatch.rss
>
> Only commits with warnings or errors are shown. Files that change are
> also searched for known/frequent coding errors using Coccinelle and a
> selection of the semantic patches found on the Coccinelle website.

Thats pretty intresting. Looking at some of the cochinelle output I am
a little confused as to what its saying. Am I right in thinking that
for those reports that a proposed patch is printed, after the comment
for the original patch? If so it might be helpful to say something like
'proposed modificiation' just before the patchlet.

Also which version of checkpatch is this output being generated with?
The one at the head of the git tree or something else? I see a couple
of false positives in there that I know I have fixed already.

-apw

2008-11-20 08:57:25

by Vegard Nossum

[permalink] [raw]
Subject: Re: gitwatch: RSS feed of checkpatch+coccinelle against new commits in mainline

On Thu, Nov 20, 2008 at 9:26 AM, Andy Whitcroft <[email protected]> wrote:
> On Tue, Nov 18, 2008 at 11:20:48PM +0100, Vegard Nossum wrote:
>> I've written a script that follows the mainline git repository and
>> runs checkpatch against all new commits. The result is available as an
>> RSS stream:
>>
>> http://kernel.org/~vegard/gitwatch.rss
>>
>> Only commits with warnings or errors are shown. Files that change are
>> also searched for known/frequent coding errors using Coccinelle and a
>> selection of the semantic patches found on the Coccinelle website.
>
> Thats pretty intresting. Looking at some of the cochinelle output I am
> a little confused as to what its saying. Am I right in thinking that
> for those reports that a proposed patch is printed, after the comment
> for the original patch? If so it might be helpful to say something like
> 'proposed modificiation' just before the patchlet.

You are correct, those are the modifications that would have been made
by the semantic patch. I agree, it might look like the log text
belongs to the patch below, which is wrong. We are also planning to
add a description to each of the semantic patches so that a better
explanation is given for the change.

> Also which version of checkpatch is this output being generated with?
> The one at the head of the git tree or something else? I see a couple
> of false positives in there that I know I have fixed already.

Yes, it's a copy of the one in linux-2.6.git (after v2.6.28-rc4). The
file itself says 0.24. Which false positives were you thinking about?


Vegard

--
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
-- E. W. Dijkstra, EWD1036

2008-11-20 09:08:04

by Andy Whitcroft

[permalink] [raw]
Subject: Re: gitwatch: RSS feed of checkpatch+coccinelle against new commits in mainline

On Thu, Nov 20, 2008 at 09:57:14AM +0100, Vegard Nossum wrote:
> On Thu, Nov 20, 2008 at 9:26 AM, Andy Whitcroft <[email protected]> wrote:
> > On Tue, Nov 18, 2008 at 11:20:48PM +0100, Vegard Nossum wrote:
> >> I've written a script that follows the mainline git repository and
> >> runs checkpatch against all new commits. The result is available as an
> >> RSS stream:
> >>
> >> http://kernel.org/~vegard/gitwatch.rss
> >>
> >> Only commits with warnings or errors are shown. Files that change are
> >> also searched for known/frequent coding errors using Coccinelle and a
> >> selection of the semantic patches found on the Coccinelle website.
> >
> > Thats pretty intresting. Looking at some of the cochinelle output I am
> > a little confused as to what its saying. Am I right in thinking that
> > for those reports that a proposed patch is printed, after the comment
> > for the original patch? If so it might be helpful to say something like
> > 'proposed modificiation' just before the patchlet.
>
> You are correct, those are the modifications that would have been made
> by the semantic patch. I agree, it might look like the log text
> belongs to the patch below, which is wrong. We are also planning to
> add a description to each of the semantic patches so that a better
> explanation is given for the change.

Yes a "You should use NULL not 0" before the patch would make it clearer
for sure.

> > Also which version of checkpatch is this output being generated with?
> > The one at the head of the git tree or something else? I see a couple
> > of false positives in there that I know I have fixed already.
>
> Yes, it's a copy of the one in linux-2.6.git (after v2.6.28-rc4). The
> file itself says 0.24. Which false positives were you thinking about?

There are a couple in there, one is a comment tracking issue and there
is one on ':' tracking for things of this form:

int foo:1,
bar:2,
baz:1;

Fixes for these are in my tree, not sure if Andrew has them yet. I am
a little behind and intending on rolling up a new block of changes this
week.

-apw