Thesis
Improving the reliability of high performance systems through fast path debugging and analysis
Washington State University
Master of Science (MS), Washington State University
2018
Handle:
https://hdl.handle.net/2376/101013
Abstract
Optimization is a serious concern in high performance systems, and developing effective and reliable solutions is a priority for software developers. To accelerate the workflow of many shared resource systems, developers implement a fast path, an optimization which serves a dual purpose in expediting the commonly executed cases in a workflow, as well as shifting edge cases to a reliable slow path. However, producing a bug-free fast path is nontrivial. This study explores patches in the Linux kernel to show that committed fast paths can have up to 19 follow-up patches for fixing bugs, the most of which are deep semantic bugs, which are difficult to detect using existing bug-finding tools. In this paper, a new category of software bugs is presented based on our fast path bug study across various systems in Linux including the virtual memory manager, file systems, network, and device drivers. We investigate the root causes of these bugs and identify the fundamental aspects of fast path errors: path state, trigger conditions, path output, fault handling, and assistant data structures. We find that many of the deep bugs can be prevented by applying static analysis incorporating simple semantic information. We extract a set of rules based on our finding and build a toolkit PALLAS to check fast path bugs. The evaluation results show that PALLAS can effectively reveal fast path bugs in a variety of systems including Linux, mobile operating systems, software-defined networking systems, and web browsers. We further design a set of definitions for formalizing and modeling fast path bugs based on the bugs studied in PALLAS and the fast path behaviors characterized in our study. These insights are used to design an automated fast path extraction and analysis tool, ATHENA, that allows us to further explore debugging the fast path from a path interaction and comparison based perspective.
Metrics
3 File views/ downloads
15 Record Views
Details
- Title
- Improving the reliability of high performance systems through fast path debugging and analysis
- Creators
- Michael Raffael Allen-Bond
- Contributors
- Xuechen Zhang (Degree Supervisor)
- Awarding Institution
- Washington State University
- Academic Unit
- Electrical Engineering and Computer Science, School of
- Theses and Dissertations
- Master of Science (MS), Washington State University
- Publisher
- Washington State University; [Pullman, Washington] :
- Identifiers
- 99900525398401842
- Language
- English
- Resource Type
- Thesis