Skip to Main content Skip to Navigation
Conference papers

Deadlock Checking by Data Race Detection

Abstract : Deadlocks are a common problem in programs with lock-based concurrency and are hard to avoid or even to detect. One way for deadlock prevention is to statically analyze the program code to spot sources of potential deadlocks.We reduce the problem of deadlock checking to race checking, another prominent concurrency-related error for which good (static) checking tools exist. The transformation uses a type and effect-based static analysis, which analyzes the data flow in connection with lock handling to find out control-points that are potentially part of a deadlock. These control-points are instrumented appropriately with additional shared variables, i.e., race variables injected for the purpose of the race analysis. To avoid overly many false positives for deadlock cycles of length longer than two, the instrumentation is refined by adding “gate locks”. The type and effect system and the transformation are formally given. We prove our analysis sound using a simple, concurrent calculus with re-entrant locks.
Document type :
Conference papers
Complete list of metadata

Cited literature [21 references]  Display  Hide  Download

https://hal.inria.fr/hal-01514663
Contributor : Hal Ifip <>
Submitted on : Wednesday, April 26, 2017 - 3:22:05 PM
Last modification on : Friday, July 12, 2019 - 9:22:05 AM
Long-term archiving on: : Thursday, July 27, 2017 - 1:00:14 PM

File

978-3-642-40213-5_3_Chapter.pd...
Files produced by the author(s)

Licence


Distributed under a Creative Commons Attribution 4.0 International License

Identifiers

Citation

Ka Pun, Martin Steffen, Volker Stolz. Deadlock Checking by Data Race Detection. 5th International Conference on Fundamentals of Software Engineering (FSEN), Apr 2013, Tehran, Iran. pp.34-50, ⟨10.1007/978-3-642-40213-5_3⟩. ⟨hal-01514663⟩

Share

Metrics

Record views

481

Files downloads

369