Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Reinhard Tartler <Reinhard.Tartler <at> informatik.uni-erlangen.de>
Subject: [ANNOUNCE] undertaker 1.0
Newsgroups: gmane.linux.kernel
Date: Thursday 27th January 2011 11:56:07 UTC (over 5 years ago)
The VAMOS team is pleased to announce the first release of undertaker 1.0.
The undertaker tool is a result of the VAMOS[1] research project.
Please visit our project site at:

http://vamos.informatik.uni-erlangen.de/trac/undertaker

What is undertaker?
-------------------

The undertaker is a tool for static code analysis for code with C
preprocessor directives, which can be used in various modes. The most
prominent one checks every single preprocessor block within the file
whether it can be selected or deselected, which in many cases is a great
asset for code maintenance.

Some preprocessor blocks are only seemingly conditional. In many cases,
it turns out that additional constraints from the project's configuration
model causes such conditional blocks to be in fact unconditionally selected
or unselected. We call such block "dead" and "undead" conditional blocks.

Undertaker provides tools to extract the configuration model from
the Linux configuration tooling Kconfig and to perform this check on whole
source trees.

We have already performed a check on the v2.6.38-rc1 tree and provide
easy access to the results via an online interface[2]. There is also a cpio
archive with the report files.

What undertaker is not?
-----------------------

It isn't an automatic patch generator. Because of peculiarities in the
Kconfig semantics, (ignored) coding guidelines and simply engineering
issues, the reports might contain false negatives. Note that our
philosophy is that we prefer false negatives over false positives, i.e.,
we prefer to miss reports than reports that are no issue at all.

What else can i do with undertaker?
-----------------------------------

You can extract boolean formulas (with or without model) for a given
line of sourcecode in a file or for a given symbol. There is also an
integration for emacs for interactive browsing of block and symbol
preconditions.

Additional uses are currently under development.

[1] http://www4.informatik.uni-erlangen.de/Research/VAMOS/
[2] http://www4.informatik.uni-erlangen.de/Research/VAMOS/linux-trees/

-- 
Reinhard Tartler                     Department of Computer Science IV
Martensstr 1, 91058 Erlangen Germany, University of Erlangen-Nuremberg
            http://www4.informatik.uni-erlangen.de/~tartler
 
CD: 3ms