Detecting Atomicity Violations in Interrupt-Driven Programs via Interruption Points Selecting and Delayed ISR-Triggering
Bin Yu, Cong Tian, Hengrui Xing, Zuchao Yang, Jie Su, Xu Lu, Jiyu Yang, Liang Zhao, Xiaofeng Li, Zhenhua Duan
Abstract
Interrupt-driven programs have been widely used in safety-critical areas such as aerospace and embedded systems. However, uncertain interleaving execution of interrupt service routines (ISRs) usually causes concurrency bugs. Specifically, when one or more ISRs attempt to preempt a sequence of instructions which are expected to be atomic, a kind of concurrency bugs namely atomicity violation may occur, and it is challenging to find this kind of bugs precisely and efficiently. In this paper, we propose a static approach for detecting atomicity violations in interrupt-driven programs. First, the program model is constructed with interruption points being selected to determine the possibly influenced ISRs. After that, reachability computation is conducted to build up a whole abstract reachability tree, and a delayed ISR-triggering strategy is employed to reduce the state space. Meanwhile, unserializable interleaving patterns are recognized to achieve the goal of atomicity violation detection. The approach has been implemented as a configurable tool namely CPA4AV. Extensive experiments show that CPA4AV is much more precise than the relative tools available with little extra time overhead. In addition, more complex situations can be dealt with CPA4AV.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get f2285fc8-5e4f-4fa9-b7a4-83221cd8bdcdRelated papers
- Precise and efficient atomicity violation detection for interrupt-driven programs via staged path pruningChao Li, Rui Chen, Boxiang Wang, Tingting Yu et al.ISSTA 2022 · 9 citations
- An Empirical Study on Concurrency Bugs in Interrupt-Driven Embedded SoftwareChao Li, Rui Chen, Boxiang Wang, Zhixuan Wang et al.ISSTA 2023 · 10 citations
- Reorder Pointer Flow in Sound Concurrency Bug PredictionYuqi Guo, Shihao Zhu, Yan Cai, Liang He et al.ICSE 2024 · 1 citation
- PASAN: Detecting Peripheral Access Concurrency Bugs within Bare-Metal Embedded ApplicationsTaegyu Kim, Vireshwar Kumar, Junghwan Rhee, Jizhou Chen et al.USENIX Security 2021 · 21 citations
- Root Causing Linearizability ViolationsBerk Çirisci, Constantin Enea, Azadeh Farzan, Suha Orhun MutluergilCAV 2020 · 4 citations
