[ldv-project] Version 0.4 of LDV Tools released
 Evgeny Novikov 
 novikov at ispras.ru
 
 Tue Oct 22 16:06:10 MSK 2013
 
 
 
After more then 2 years of active development we are happy to announce 
that we released version 0.4 of LDV Tools. This version includes a lot 
of improvements and many bug fixes. In total it consists of about 900 
commits that were made just in the LDV Tools repository 
<http://forge.ispras.ru/projects/ldv/repository> not including 
submodules. The most significant changes are:
 * Improvements in existing rule models: Module get/put
 <http://forge.ispras.ru/issues/3239>, Atomic allocation in
 interrupt context <http://forge.ispras.ru/issues/3317>, Mutex
 lock/unlock <http://forge.ispras.ru/issues/1940>, Memory
 allocation under spinlocks <http://forge.ispras.ru/issues/3232>,
 NOIO allocation under USB lock <http://forge.ispras.ru/issues/3220>.
 * Support of 25 new rule models: Possible TTY NULL dereference
 <http://forge.ispras.ru/issues/2692>, Block requests
 <http://forge.ispras.ru/issues/2706>, Usage of msleep()
 <http://forge.ispras.ru/issues/2732>, USB gadget driver
 (de)registration <http://forge.ispras.ru/issues/2742>,
 Initialization of spinlocks <http://forge.ispras.ru/issues/2747>,
 Integer underflow in calling copy_from_user(), copy_to_user(),
 etc. <http://forge.ispras.ru/issues/2771>, Usage of
 spin_lock_irq*() <http://forge.ispras.ru/issues/3035>, Usage of
 local_irq_*() <http://forge.ispras.ru/issues/3223>, RW locks
 lock/unlock <http://forge.ispras.ru/issues/3193>, probe() return
 values <http://forge.ispras.ru/issues/2606>, Arguments of
 find_next_zero_bit() <http://forge.ispras.ru/issues/3261>,
 Initialization of sysfs attributes
 <http://forge.ispras.ru/issues/3270>, USB reference counting
 <http://forge.ispras.ru/issues/3306>, Double kfree_skb()
 <http://forge.ispras.ru/issues/3311>, Error handling in probe()
 <http://forge.ispras.ru/issues/3313>, usb_deregister() and
 usb_serial_deregister() <http://forge.ispras.ru/issues/3316>,
 netif_napi_add()/netif_napi_del()
 <http://forge.ispras.ru/issues/3327>, napi_enable()/napi_disable()
 <http://forge.ispras.ru/issues/3328>,
 register_netdev()/unregister_netdev(),
 alloc_netdev()/free_netdev() <http://forge.ispras.ru/issues/3338>,
 Usage of mod_timer() <http://forge.ispras.ru/issues/3340>, Usage
 of semaphores <http://forge.ispras.ru/issues/3399>, Work with
 clocks <http://forge.ispras.ru/issues/3608>, RCU read sections
 nesting <http://forge.ispras.ru/issues/3831>, RCU update
 operations inside read sections
 <http://forge.ispras.ru/issues/3832>, Initialization of
 completions <http://forge.ispras.ru/issues/3865>.
 * Fixing patterns for several driver callback structures to generate
 correct environment models.
 * Introducing C Instrumentation Framework
 <http://forge.ispras.ru/projects/cif> - a user-friendly interface
 for Aspectator.
 * Supporting reusable blocks of aspect files and corresponding
 rearranging all existing rule models.
 * Added ability to make source code querying with help of
 Aspectator, which is used in construction of rule models on the
 basis of instrumented source code (see corresponding news
 <http://forge.ispras.ru/news/184>) and in generation of
 environment models.
 * Support of a more user-friendly interface for reachability C
 verifiers.
 * Switch to 2.7.1 <http://forge.ispras.ru/news/126> version of BLAST
 <http://forge.ispras.ru/projects/blast/> - a default verifier of
 LDV Tools.
 * Better integration with CPAchecker
 <http://cpachecker.sosy-lab.org/> verifier that was included as
 submodule
 <http://forge.ispras.ru/projects/ldv/repository/changes/dscv/rcv/backends/cpachecker?rev=master>
 of LDV Tools.
 * Integration with UFO <https://bitbucket.org/arieg/ufo/wiki/Home>
 verifier.
 * Introducing a common format of error traces and improving
 visualization of error traces of different verifiers.
 * Knowledge Base <http://forge.ispras.ru/news/69> support for
 automatic marking unsafe verdicts of verifiers.
 * Support for an automatic validation of LDV Tools and verifiers on
 known bugs in the Linux kernel.
 * Coverage generation for debugging LDV Tools and different analyses
 of CPAchecker verifier.
Validation <http://forge.ispras.ru/projects/ldv/wiki/LDV_Validator> of 
LDV Tools 0.4 with different verifiers on 38 known bugs in the Linux 
kernel showed that:
 * BLAST is able to detect 15 of them.
 * CPAchecker is able to detect 13 of them.
The source code repository may be browsed by v0.4 
<http://forge.ispras.ru/projects/ldv/repository/show?rev=v0.4> tag. To 
get and to install LDV Tools see instructions 
<http://forge.ispras.ru/projects/ldv/wiki/Downloading_and_Building_LDV>.
Source ISP RAS Open-Source Projects <http://forge.ispras.ru/news/261>.
-- 
Best regards, Evgeny Novikov.
Linux Verification Center, ISPRAS
web: http://linuxtesting.org
e-mail: novikov at ispras.ru
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://linuxtesting.org/pipermail/ldv-project/attachments/20131022/72cd7ecd/attachment.html>
 
 
More information about the ldv-project
mailing list