Sound deadlock prediction

Author:

Kalhauge Christian Gram1,Palsberg Jens1

Affiliation:

1. University of California at Los Angeles, USA

Abstract

For a concurrent program, a prediction tool maps the history of a single run to a prediction of bugs in an exponential number of other runs. If all those bugs can occur, then the tool is sound. This is the case for some data race tools like RVPredict, but was, until now, not the case for deadlock tools. We present the first sound tool for predicting deadlocks in Java. Unlike previous work, we use request events and a novel form of executability constraints that enable sound and effective deadlock prediction. We model prediction as a general decision problem, which we show is decidable and can be instantiated to both deadlocks and data races. Our proof of decidability maps the decision problem to an equivalent constraint problem that we solve using an SMT-solver. Our experiments show that our tool finds real deadlocks effectively, including some missed by DeadlockFuzzer, which verifies each deadlock candidate by re-executing the input program. Our experiments also show that our tool can be used to predict more, real data races than RVPredict.

Publisher

Association for Computing Machinery (ACM)

Subject

Safety, Risk, Reliability and Quality,Software

Reference38 articles.

1. Dynamic Deadlock Analysis of Multi-threaded Programs

2. The DaCapo benchmarks

3. Taming reflection

4. Eric Bruneton Romain Lenglet and Thierry Coupaye. 2002. ASM: a code manipulation tool to implement adaptable systems. Adaptable and extensible component systems 30 19 (2002). Eric Bruneton Romain Lenglet and Thierry Coupaye. 2002. ASM: a code manipulation tool to implement adaptable systems. Adaptable and extensible component systems 30 19 (2002).

Cited by 27 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. CSSTs: A Dynamic Data Structure for Partial Orders in Concurrent Execution Analysis;Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3;2024-04-27

2. On the Effectiveness of Machine Learning-based Call Graph Pruning: An Empirical Study;Proceedings of the 21st International Conference on Mining Software Repositories;2024-04-15

3. Optimistic Prediction of Synchronization-Reversal Data Races;Proceedings of the IEEE/ACM 46th International Conference on Software Engineering;2024-04-12

4. PredRacer: Predictively Detecting Data Races in Android Applications;2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER);2024-03-12

5. Reorder Pointer Flow in Sound Concurrency Bug Prediction;Proceedings of the IEEE/ACM 46th International Conference on Software Engineering;2024-02-06

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3