Skip to content
/ whoop Public

automatic data race analysis for Linux device drivers

License

Notifications You must be signed in to change notification settings

smackers/whoop

Folders and files

NameName
Last commit message
Last commit date
Apr 30, 2015
Jul 27, 2016
May 21, 2015
May 13, 2016
Mar 22, 2015
Aug 5, 2014
Mar 13, 2014
Mar 21, 2014
Apr 15, 2016
Mar 4, 2016
Apr 21, 2015
Mar 13, 2014
Mar 4, 2016
Mar 6, 2015

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