Lune

EuroSys2023Top-tier venue

WAFFLE: Exposing Memory Ordering Bugs Efficiently with Active Delay Injection

Bogdan Alexandru Stoica, Shan Lu, Madanlal Musuvathi, Suman Nath

2023Year
4Citations
4Top-tier citations

Abstract

Concurrency bugs are difficult to detect, reproduce, and diagnose, as they manifest under rare timing conditions. Recently, active delay injection has proven efficient for exposing one such type of bug -thread-safety violations -with low overhead, high coverage, and minimal code analysis. However, how to efficiently apply active delay injection to broader classes of concurrency bugs is still an open question.

We aim to answer this question by focusing on MemOrder bugs -a type of concurrency bug caused by incorrect timing between a memory access to a particular object and the object's initialization or deallocation. We first show experimentally that the current state-of-the-art delay injection technique leads to high overhead and low detection coverage since MemOrder bugs exhibit particular characteristics that cause high delay density and interference. Based on these insights, we propose Waffle -a delay injection tool that tailors key design points to better match the nature of MemOrder bugs. Evaluating our tool on 11 popular opensource multi-threaded C# applications shows that Waffle can expose more bugs with less overhead than state-of-theart techniques.

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext 7da72682-933f-46d8-a7c7-b1e95e90a7f9

Cited by top-tier papers4

Ask how each one uses it

Builds on5

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines