From: "Aneesh Kumar K. V" <aneesh.kumar@linux.vnet.ibm.com>
To: Julia Lawall <julia@diku.dk>
Cc: "Pekka Enberg" <penberg@kernel.org>,
"Américo Wang" <xiyou.wangcong@gmail.com>,
"Steven Rostedt" <rostedt@goodmis.org>,
"Jonathan Corbet" <corbet@lwn.net>,
LKML <linux-kernel@vger.kernel.org>,
"Andy Whitcroft" <apw@shadowen.org>,
"Dave Jones" <davej@redhat.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Nicolas Palix" <npalix@diku.dk>, "Ingo Molnar" <mingo@elte.hu>
Subject: Re: [PATCH] checkpatch: Test for kmalloc/memset(0) pairs
Date: Thu, 24 Mar 2011 22:58:31 +0530 [thread overview]
Message-ID: <871v1wmnr4.fsf@linux.vnet.ibm.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1103241705510.8624@pc-004.diku.dk>
On Thu, 24 Mar 2011 17:08:01 +0100 (CET), Julia Lawall <julia@diku.dk> wrote:
> On Thu, 24 Mar 2011, Aneesh Kumar K. V wrote:
>
> > On Sun, 20 Mar 2011 10:17:07 +0100 (CET), Julia Lawall <julia@diku.dk> wrote:
> > > On Sun, 20 Mar 2011, Pekka Enberg wrote:
> > >
> > > > Hi Julia,
> > > >
> > > > On Sun, Mar 20, 2011 at 10:01 AM, Julia Lawall <julia@diku.dk> wrote:
> > > > > Suggestions for how to make it easier to use or the documentation more
> > > > > understandable are welcome.
> > > >
> > > > The benefit of scripts/checkpatch.pl is that it doesn't require any
> > > > setting up to do. I'm personally less likely to use Coccinelle (and
> > > > Sparse for that matter) on boxes where the software is not installed.
> > > > I'm not sure how other people feel about it, but I'd personally love
> > > > to see tools/coccinelle and tools/sparse.
> > >
> > > This was discussed before, and it was felt that perhaps 75000 lines of
> > > ocaml code was not really appropriate for the Linux source tree, and also
> > > that it would too much complicate our development process.
> > >
> > > One reason for using multiple machines would be to work on multiple
> > > architectures. But Coccinelle is not sensitive to the architecture on
> > > which it is run, so perhaps you do't need to have it installed everywhere.
> > >
> > > > As for something more concrete, I guess this is what I'm mostly interested in:
> > > >
> > > > penberg@jaguar:~/src/linux$ make C=1 CHECK="scripts/coccicheck" mm/slub.o
> > > >
> > > > I guess it'd be good to document that for 'make help' because now you
> > > > need to dig through Documentation/coccinelle.txt to find it.
> > >
> > > OK, thanks. We will look into that.
> > >
> > > > P.S. It seems there's a bug somewhere because the above command fails
> > > > miserably for me:
> > > >
> > > > CHK include/linux/version.h
> > > > CHK include/generated/utsrelease.h
> > > > CALL scripts/checksyscalls.sh
> > > > CHECK mm/slub.c
> > > > File "/home/penberg/src/linux/scripts/coccinelle/api/memdup_user.cocci",
> > > > line 32, column 5, charpos = 747
> > > > around = '<+...', whole content = - <+... when != goto l2;
> > > > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty
> > > > context: <+...")
> > > > File "/home/penberg/src/linux/scripts/coccinelle/api/memdup_user.cocci",
> > > > line 32, column 5, charpos = 747
> > > > around = '<+...', whole content = - <+... when != goto l2;
> > > > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty
> > > > context: <+...")
> > > > File "/home/penberg/src/linux/scripts/coccinelle/api/memdup_user.cocci",
> > > > line 32, column 5, charpos = 747
> > > > around = '<+...', whole content = - <+... when != goto l2;
> > > > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty
> > > > context: <+...")
> > > > File "/home/penberg/src/linux/scripts/coccinelle/api/memdup_user.cocci",
> > > > line 32, column 5, charpos = 747
> > > > around = '<+...', whole content = - <+... when != goto l2;
> > > > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty
> > > > context: <+...")
> > > > make[1]: *** [mm/slub.o] Error 1
> > > > make: *** [mm/slub.o] Error 2
> > > >
> > > > penberg@jaguar:~/src/linux$ dpkg -l|grep coccinelle
> > > > ii coccinelle 0.2.2.deb-2
> > > > semantic patching tool for C
> > > >
> > > > [ I'm on Ubuntu 10.10. ]
> > >
> > > Indeed that one seems to be quite out of date. You can get the most
> > > recent version here: https://launchpad.net/~npalix/+archive/coccinelle
> >
> > I never got a working version of coccinelle with scripts in the kernel.
> > Even the ppa version doesn't work for me.
> >
> > make C=2 CHECK=scripts/coccicheck fs/namei.o
> > ...
> > ....
> > CHECK scripts/mod/empty.c
> > File "/home/opensource/sources/kernels/linux-2.6/scripts/coccinelle/api/memdup_user.cocci", line 32, column 5, charpos = 747
> > around = '<+...', whole content = - <+... when != goto l2;
> > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty context: <+...")
> > File "/home/opensource/sources/kernels/linux-2.6/scripts/coccinelle/api/memdup_user.cocci", line 32, column 5, charpos = 747
> > around = '<+...', whole content = - <+... when != goto l2;
> > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty context: <+...")
> > File "/home/opensource/sources/kernels/linux-2.6/scripts/coccinelle/api/memdup_user.cocci", line 32, column 5, charpos = 747
> > around = '<+...', whole content = - <+... when != goto l2;
> > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty context: <+...")
> > File "/home/opensource/sources/kernels/linux-2.6/scripts/coccinelle/api/memdup_user.cocci", line 32, column 5, charpos = 747
> > around = '<+...', whole content = - <+... when != goto l2;
> > Fatal error: exception Lexer_cocci.Lexical("invalid in a nonempty context: <+...")
>
> That's quite strange. Could you check that you are using the ppa version
> and not the old version? spatch -version should give you 0.2.5-rc8
missed an apt-get update between add-apt-repository and apt-get install
-aneesh
next prev parent reply other threads:[~2011-03-24 17:28 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-18 2:52 [PATCH] checkpatch: Test for kmalloc/memset(0) pairs Steven Rostedt
2011-03-18 3:15 ` Jonathan Corbet
2011-03-18 3:32 ` Steven Rostedt
2011-03-20 3:40 ` Américo Wang
2011-03-20 7:02 ` Pekka Enberg
2011-03-20 8:01 ` Julia Lawall
2011-03-20 9:02 ` Pekka Enberg
2011-03-20 9:17 ` Julia Lawall
2011-03-20 10:54 ` Ingo Molnar
2011-03-20 11:06 ` Pekka Enberg
2011-03-20 11:32 ` Nicolas Palix
2011-03-20 12:00 ` Julia Lawall
2011-03-20 11:09 ` Alexey Dobriyan
2011-03-20 12:38 ` Julia Lawall
2011-03-20 14:48 ` Alejandro Riveira Fernández
2011-03-21 13:13 ` Steven Rostedt
2011-03-24 15:34 ` Aneesh Kumar K. V
2011-03-24 16:08 ` Julia Lawall
2011-03-24 16:10 ` Nicolas Palix
2011-03-24 18:30 ` Arnaud Lacombe
2011-03-24 20:39 ` Julia Lawall
2011-03-24 17:28 ` Aneesh Kumar K. V [this message]
2011-03-19 19:39 ` Dave Jones
2011-03-21 13:26 ` Steven Rostedt
2011-03-21 13:29 ` Steven Rostedt
2011-03-21 13:55 ` Borislav Petkov
2011-03-22 19:58 ` checkpatch: introduce --nocs to disable CodingStyle warnings Dave Jones
2011-03-22 20:21 ` Joe Perches
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=871v1wmnr4.fsf@linux.vnet.ibm.com \
--to=aneesh.kumar@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=apw@shadowen.org \
--cc=corbet@lwn.net \
--cc=davej@redhat.com \
--cc=julia@diku.dk \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=npalix@diku.dk \
--cc=penberg@kernel.org \
--cc=rostedt@goodmis.org \
--cc=xiyou.wangcong@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.