DocumentCode
3722982
Title
Fast and Precise Symbolic Analysis of Concurrency Bugs in Device Drivers (T)
Author
Pantazis Deligiannis;Alastair F. Donaldson;Zvonimir Rakamaric
Author_Institution
Dept. of Comput., Imperial Coll. London, London, UK
fYear
2015
Firstpage
166
Lastpage
177
Abstract
Concurrency errors, such as data races, make device drivers notoriously hard to develop and debug without automated tool support. We present Whoop, a new automated approach that statically analyzes drivers for data races. Whoop is empowered by symbolic pairwise lockset analysis, a novel analysis that can soundly detect all potential races in a driver. Our analysis avoids reasoning about thread interleavings and thus scales well. Exploiting the race-freedom guarantees provided by Whoop, we achieve a sound partial-order reduction that significantly accelerates Corral, an industrial-strength bug-finder for concurrent programs. Using the combination of Whoop and Corral, we analyzed 16 drivers from the Linux 4.0 kernel, achieving 1.5 -- 20× speedups over standalone Corral.
Keywords
"Concurrent computing","Programming","Linux","Computer bugs","Kernel","Instruction sets","Context"
Publisher
ieee
Conference_Titel
Automated Software Engineering (ASE), 2015 30th IEEE/ACM International Conference on
Type
conf
DOI
10.1109/ASE.2015.30
Filename
7372006
Link To Document