DLOS: Effective Static Detection of Deadlocks in OS Kernels

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Deadlocks in OS kernels can cause critical problems like performance degradation and system hangs. However, detecting deadlocks in OS kernels is quite challenging, due to high complexity of concurrent execution and large code bases of OS kernels. In this paper, we design a practical static analysis approach named DLOS, to effectively detect deadlocks in OS kernels. DLOS consists of three key techniques: (1) a summary-based lock-usage analysis to efficiently extract the code paths containing distinct locking constraints from kernel code; (2) a reachability-based comparison method to efficiently detect locking cycles from locking constraints; (3) a two-dimensional filtering strategy to effectively drop false positives by validating code-path feasibility and concurrency. We have evaluated DLOS on Linux 5.10, and find 54 real deadlocks, with a false positive rate of 17%. We have reported these deadlocks to Linux kernel developers, and 31 of them have been confirmed.

Original languageEnglish
Title of host publicationProceedings of the 2022 USENIX Annual Technical Conference, ATC 2022
PublisherUSENIX Association
Pages367-381
Number of pages15
ISBN (Electronic)9781939133298
StatePublished - 2022
Externally publishedYes
Event2022 USENIX Annual Technical Conference, ATC 2022 - Carlsbad, United States
Duration: 11 Jul 202213 Jul 2022

Publication series

NameProceedings of the 2022 USENIX Annual Technical Conference, ATC 2022

Conference

Conference2022 USENIX Annual Technical Conference, ATC 2022
Country/TerritoryUnited States
CityCarlsbad
Period11/07/2213/07/22

Fingerprint

Dive into the research topics of 'DLOS: Effective Static Detection of Deadlocks in OS Kernels'. Together they form a unique fingerprint.

Cite this