TY - GEN
T1 - Sound Predictive Atomicity Violation Detection§
AU - Ma, Xiaoxue
AU - Ashraf, Imran
AU - Chan, W. K.
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021
Y1 - 2021
N2 - Many concurrency bugs are hidden deeply behind thread interleaving and are hard to detect. Existing dynamic predictive checkers can analyze execution traces to expose predictive cases of data races and deadlocks hidden by the thread interleavings of execution traces and inferable from these inter-leavings. To the best of our knowledge, however, no existing work for the detection of atomicity violation at the transaction level (AV) can expose predictive atomicity violations. In this paper, we present the first work to address this problem. Our technique, Meteor, formulates a novel algorithm with a thread-centric pipeline to capture enumerable dependency sequences containing reversible dependencies incrementally, implicitly, and soundly. It detects predictive atomicity violations without producing false positives. We prove its soundness by theorems. We have evaluated Meteor on 19 subjects, which confirms the soundness and effectiveness of Meteor to detect predictive atomicity violations in the programs.
AB - Many concurrency bugs are hidden deeply behind thread interleaving and are hard to detect. Existing dynamic predictive checkers can analyze execution traces to expose predictive cases of data races and deadlocks hidden by the thread interleavings of execution traces and inferable from these inter-leavings. To the best of our knowledge, however, no existing work for the detection of atomicity violation at the transaction level (AV) can expose predictive atomicity violations. In this paper, we present the first work to address this problem. Our technique, Meteor, formulates a novel algorithm with a thread-centric pipeline to capture enumerable dependency sequences containing reversible dependencies incrementally, implicitly, and soundly. It detects predictive atomicity violations without producing false positives. We prove its soundness by theorems. We have evaluated Meteor on 19 subjects, which confirms the soundness and effectiveness of Meteor to detect predictive atomicity violations in the programs.
KW - atomicity violation
KW - conflict serializability
KW - dynamic analysis
KW - multithreaded programs
KW - predictive analysis
UR - https://www.scopus.com/pages/publications/85146198086
U2 - 10.1109/QRS54544.2021.00022
DO - 10.1109/QRS54544.2021.00022
M3 - Conference contribution
AN - SCOPUS:85146198086
T3 - IEEE International Conference on Software Quality, Reliability and Security, QRS
SP - 114
EP - 125
BT - Proceedings - 2021 21st International Conference on Software Quality, Reliability and Security, QRS 2021
T2 - 21st International Conference on Software Quality, Reliability and Security, QRS 2021
Y2 - 6 December 2021 through 10 December 2021
ER -