McPatom: a predictive analysis tool for atomicity violation using model checking

  • Authors:
  • Reng Zeng;Zhuo Sun;Su Liu;Xudong He

  • Affiliations:
  • School of Computing and Information Sciences, Florida International University, Miami, Florida;School of Computing and Information Sciences, Florida International University, Miami, Florida;School of Computing and Information Sciences, Florida International University, Miami, Florida;School of Computing and Information Sciences, Florida International University, Miami, Florida

  • Venue:
  • SPIN'12 Proceedings of the 19th international conference on Model Checking Software
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Multi-thread programs are prone to bugs due to concurrency. Concurrency bugs are hard to find and reproduce because of the large number of interleavings. Most non-deadlock concurrency bugs are atomicity violation bugs due to unprotected accesses of shared variables by multiple threads. This paper presents a dynamic prediction tool named McPatom for predicting atomicity violation bugs involving a pair of threads accessing a shared variable using model checking. McPatom uses model checking to ensure the completeness in predicting any possible atomicity violation captured in the abstract thread model extracted from an interleaved execution. McPatom can predict atomicity violations involving more than three accesses and multiple subroutines, and supports all synchronization primitives. We have applied McPatom in predicting several known bugs in real world systems including one that evades several other existing tools. We provide evaluations of McPatom in terms of atomicity violation predictability and performance with additional improvement strategies.