|
|
Subscribe / Log in / New account

Re: [2.5] [Cool stuff] "checking" mode for kernel builds

From:  Linus Torvalds <torvalds@transmeta.com>
To:  Carl-Daniel Hailfinger <c-d.hailfinger.kernel.2003@gmx.net>
Subject:  Re: [2.5] [Cool stuff] "checking" mode for kernel builds
Date:  Mon, 26 May 2003 17:36:03 -0700 (PDT)
Cc:  Linux Kernel Mailing List <linux-kernel@vger.kernel.org>


On Tue, 27 May 2003, Carl-Daniel Hailfinger wrote:
> 
> while eagerly waiting for the release of that tool, I have a few
> comments about the patch itself.

Well, I guess I can just tell people about it. It's unfinished enough that
I'm a bit embarrassed about some of it, but I've gotten the permission
from Transmeta to make it open source, and it's actually been available
for some time on "bk://kernel.bkbits.net/torvalds/sparse". I just didn't 
tell about it in public (although a few people have known about it).

Be gentle with it. It does many things wrong, including (but limited 
to) enums, but it does a lot of things right too.

The biggest problem (apart from the things it does wrong) is that some
parts of the kenel re-use the same structure to hold both user- and kernel
pointers. That's a big no-no for the static semantic parser, since it's 
literally a _static_ type-checker, and doesn't know about dynamic 
differences. 

The main offender is the networking layer that sometimes keeps user
pointers and sometimes kenrel pointers in a "struct iovec". David has
promised to look into this, and seemed confident that he can fix it 
easily.

Most people who have used the tool actually like how it forces you to make 
it very _explicit_ whether you're using a user pointer or not. But I have 
to admit that I've grown tired of trying to look at all the uses and 
making sure which sparse warnings are valid and which aren't.

				Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



to post comments

since I dont have bitkeeper.... whats it written in ?

Posted May 29, 2003 13:43 UTC (Thu) by johnjones (guest, #5462) [Link]

I dont have bitkeeper....

could somone tell me how its written ?

gcc mod
perl
python
lex/yacc

and what it check's for...

regards

John Jones


Copyright © 2003, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds