Data races occur when multiple threads are about to access the same piece of memory, and at least one of those accesses is a write. Such races can lead to hard-to-reproduce bugs that are time consuming to debug and fix. We present RELAY, a static and scalable race detection analysis in which unsoundness is modularized to a few sources. We describe the analysis and results from our experiments using RELAY to find data races in the Linux kernel, which includes about 4.5 million lines of code.
RELAY: Static Race Detection on Millions of Lines of Code
ppt (sorry, it doesn't seem to animate well in OOo)
RELAY + RADAR v.0.10.03: gzip or xz
version 0.9.09: here
version 0.8.08: here
version 0.7.07: here