Skip to content

xennygrimmato/whoop

 
 

Repository files navigation

Whoop

Whoop is a SMACK-based symbolic data race analyzer for Linux device drivers.

Prerequisites

  1. LLVM 3.5
  2. SMACK 1.5
  3. Z3 4.3.2
  4. Corral
  5. Chauffeur

Build instructions

  1. Clone this project.
  2. Compile using Visual Studio or Mono.

We also have vagrant support for building a virtual machine with the toolchain installed. To do this use the following from the project's root directory:

vagrant up

How to use

The input to Whoop is a Linux driver. To use Whoop do the following:

.\whoop.py ${DRIVER}.c

To use Corral for precise bug-finding do the following:

.\whoop.py ${DRIVER}.c --find-bugs --yield-race-check

Tool options

Use --verbose for verbose mode. Use --time for timing information.

Publications

About

automatic data race analysis for Linux device drivers

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 78.6%
  • C# 14.0%
  • C++ 3.8%
  • Python 2.2%
  • Objective-C 1.2%
  • Shell 0.2%