{MUZZ}: Thread-aware grey-box fuzzing for effective bug hunting in multithreaded programs
Grey-box fuzz testing has revealed thousands of vulnerabilities in real-world software owing
to its lightweight instrumentation, fast coverage feedback, and dynamic adjusting strategies …
to its lightweight instrumentation, fast coverage feedback, and dynamic adjusting strategies …
Root causing flaky tests in a large-scale industrial setting
In today's agile world, developers often rely on continuous integration pipelines to help build
and validate their changes by executing tests in an efficient manner. One of the significant …
and validate their changes by executing tests in an efficient manner. One of the significant …
Maximal sound predictive race detection with control flow abstraction
Despite the numerous static and dynamic program analysis techniques in the literature, data
races remain one of the most common bugs in modern concurrent software. Further, the …
races remain one of the most common bugs in modern concurrent software. Further, the …
Automated atomicity-violation fixing
Fixing software bugs has always been an important and time-consuming process in software
development. Fixing concurrency bugs has become especially critical in the multicore era …
development. Fixing concurrency bugs has become especially critical in the multicore era …
TaxDC: A taxonomy of non-deterministic concurrency bugs in datacenter distributed systems
We present TaxDC, the largest and most comprehensive taxonomy of non-deterministic
concurrency bugs in distributed systems. We study 104 distributed concurrency (DC) bugs …
concurrency bugs in distributed systems. We study 104 distributed concurrency (DC) bugs …
A randomized scheduler with probabilistic guarantees of finding bugs
This paper presents a randomized scheduler for finding concurrency bugs. Like current
stress-testing methods, it repeatedly runs a given test program with supplied inputs …
stress-testing methods, it repeatedly runs a given test program with supplied inputs …
Exploiting the laws of order in smart contracts
We investigate a family of bugs in blockchain-based smart contracts, which we dub event-
ordering (or EO) bugs. These bugs are intimately related to the dynamic ordering of contract …
ordering (or EO) bugs. These bugs are intimately related to the dynamic ordering of contract …
RacerD: compositional static race detection
Automatic static detection of data races is one of the most basic problems in reasoning about
concurrency. We present RacerD—a static program analysis for detecting data races in Java …
concurrency. We present RacerD—a static program analysis for detecting data races in Java …
[PDF][PDF] Effective {Data-Race} Detection for the Kernel
Data races are an important class of concurrency errors where two threads erroneously
access a shared memory location without appropriate synchronization. This paper presents …
access a shared memory location without appropriate synchronization. This paper presents …
Automated {Concurrency-Bug} Fixing
Concurrency bugs are widespread in multithreaded programs. Fixing them is time-
consuming and error-prone. We present CFix, a system that automates the repair of …
consuming and error-prone. We present CFix, a system that automates the repair of …