Race Directed Fuzzing for More Effective Concurrency Testing

Hiromasa Ito, Yutaka Matsubara, Hiroaki Takada · 2024

Concurrency bugs can be tricky to identify and resolve because they rely on subtle timing or ordering issues that are hard to replicate. Schfuzz is a technique that helps to conduct concurrency tests by fuzzing and can detect concurrency bugs more efficiently and effectively than traditional feedback-guided fuzzing. However, Schfuzz may only sometimes be an effective method since it monitors access to all shared memories, even when they are not involved in such issues. To improve Schfuzz’s effectiveness, we propose a new approach focusing on shared memories with data races. Our method first uses data race detectors to identify potential data races and then instructs Schfuzz to explore concurrency bugs in shared memory regions where data races occur. We have implemented a prototype of our proposed method and conducted experiments to measure its improvement over Schfuzz. As a result, the proposed method has detected the potential concurrency bugs significantly faster than vanilla Schfuzz in 7 of 11 targets with data races.

Read the paper · More papers on PaperTik