Abstract
Data races are increasingly seen as concurrency bugs and they are difficult to reproduce and diagnose in parallel programs. Linux kernel is a large-scale software system, in which intensive thread-level parallelism and non-deterministic thread interleaving are more prone to race conditions. This paper conducts an investigation of real Linux kernel data races in recent 5 years. Our results show that there are about 500 real kernel data races reported and fixed in recent 5 years. File systems and drivers among all modules hold a much higher percentage of race conditions than other modules. We also conduct a case-by-case study on data races and graphically show how these data races are triggered with specific thread interleaving. Our analysis results are of interest to researchers and engineers who are committed to kernel data race detection and kernel development.
Original language | English |
---|---|
Pages (from-to) | 556-560 |
Number of pages | 5 |
Journal | Chinese Journal of Electronics |
Volume | 27 |
Issue number | 3 |
DOIs | |
Publication status | Published - 10 May 2018 |
Keywords
- Concurrency
- Data race
- Linux kernel
- Synchronization