Litcius/Paper detail

Peahen: fast and precise static deadlock detection via context reduction

Yuandao Cai, Chengfeng Ye, Qingkai Shi, Charles Zhang

2022Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering13 citationsDOI

Abstract

Deadlocks still severely inflict reliability and security issues upon software systems of the modern age. Worse still, as we note, in prior static deadlock detectors, good precision does not go hand-in-hand with high scalability --- their approaches are either context-insensitive, thereby engendering many false positives, or suffer from the calling context explosion to reach context-sensitive, thus compromising good efficiency. In this paper, we advocate Peahen, geared towards precise yet also scalable static deadlock detection. At its crux, Peahen decomposes the computational effort for embracing high precision into two cooperative analysis stages: (i) context-insensitive lock-graph construction, which selectively encodes the essential lock-acquisition information on each edge, and (ii) three precise yet lazy refinements, which incorporate such edge information into progressively refining the deadlock cycles in the lock graph only for a few interesting calling contexts.

Topics & Concepts

Computer scienceDeadlockScalabilityDeadlock prevention algorithmsLock (firearm)Context (archaeology)Static analysisDistributed computingFalse positive paradoxGraphWait-for graphEnhanced Data Rates for GSM EvolutionReduction (mathematics)Dependency graphReliability (semiconductor)Theoretical computer scienceProgramming languageArtificial intelligenceGraph rewritingOperating systemEngineeringPhysicsPaleontologyBiologyPower (physics)Quantum mechanicsMechanical engineeringMathematicsGeometryAdvanced Malware Detection TechniquesSecurity and Verification in ComputingSoftware Testing and Debugging Techniques