Deadlock prediction via generalized dependency

5Citations
Citations of this article
11Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Deadlocks are notorious bugs in multithreaded programs, causing serious reliability issues. However, they are difficult to be fully expunged before deployment, as their appearances typically depend on specific inputs and thread schedules, which require the assistance of dynamic tools. However, existing deadlock detection tools mainly focus on locks, but cannot detect deadlocks related to condition variables. This paper presents a novel approach to fill this gap. It extends the classic lock dependency to generalized dependency by abstracting the signal for the condition variable as a special resource so that communication deadlocks can be modeled as hold-and-wait cycles as well. It further designs multiple practical mechanisms to record and analyze generalized dependencies. In the end, this paper presents the implementation of the tool, called UnHang. Experimental results on real applications show that UnHang is able to find all known deadlocks and uncover two new deadlocks. Overall, UnHang only imposes around 3% performance overhead and 8% memory overhead, making it a practical tool for the deployment environment.

References Powered by Scopus

Extended static checking for Java

938Citations
N/AReaders
Get full text

RacerX: Effective, static detection of race conditions and deadlocks

575Citations
N/AReaders
Get full text

Effective static deadlock detection

157Citations
N/AReaders
Get full text

Cited by Powered by Scopus

Peahen: fast and precise static deadlock detection via context reduction

12Citations
N/AReaders
Get full text

Petri Net Unfolding-Based Detection and Replay of Program Deadlocks

2Citations
N/AReaders
Get full text

Static Deadlock Detection for Interrupt-driven Embedded Software

0Citations
N/AReaders
Get full text

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Cite

CITATION STYLE

APA

Zhou, J., Yang, H., Lange, J., & Liu, T. (2022). Deadlock prediction via generalized dependency. In ISSTA 2022 - Proceedings of the 31st ACM SIGSOFT International Symposium on Software Testing and Analysis (pp. 455–466). Association for Computing Machinery, Inc. https://doi.org/10.1145/3533767.3534377

Readers' Seniority

Tooltip

PhD / Post grad / Masters / Doc 3

75%

Professor / Associate Prof. 1

25%

Readers' Discipline

Tooltip

Computer Science 4

100%

Save time finding and organizing research with Mendeley

Sign up for free