[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.0906021141010.19390@bicker>
Date: Tue, 2 Jun 2009 11:41:06 +0300 (EAT)
From: Dan Carpenter <error27@...il.com>
To: linux-kernel@...r.kernel.org
Subject: smatch 1.53 released
Smatch is a source code checker for C. Right now the focus is on checking
for kernel bugs.
Here is are the instructions for installing and using:
git clone git://repo.or.cz/smatch.git
cd smatch
make
cd /usr/src/linux
make C=1 CHECK=/path/to/smatch modules bzImage | tee warns.txt
egrep '(warn|error):' warns.txt
Some weeks ago I pushed a bad commit. I haven't had internet access to
fix it until now. Sorry about that. It's fixed now.
Smatch v1.53 improves handling of compound implications. So if you have
code like this:
aaa = 0;
if (y)
aaa = 1;
if (x)
aaa = 2;
if (x && y)
__smatch_print_value("aaa"); // <-- prints aaa == 2
else
__smatch_print_value("aaa"); // <-- prints aaa == 0-2
This version also adds implications for switch statements.
if (!a && x != 42)
return;
switch(x) {
case 1:
a->member = 1; // <-- It's ok to dereference 'a' here.
case 42:
a->member = 1; // <-- smatch prints an error here.
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists