Oops! Where Did That Code Snippet Come from?

TitleOops! Where Did That Code Snippet Come from?
Publication TypeConference Paper
Year of Publication2014
AuthorsGuo, L, Lawall, J, Muller, G
Secondary TitleProceedings of the 11th Working Conference on Mining Software Repositories
Pagination52–61
PublisherACM
Place PublishedNew York, NY, USA
ISBN Number978-1-4503-2863-0
Keywordsdebugging, linux kernel, oops, sequence alignment
Abstract

A kernel oops is an error report that logs the status of the Linux kernel at the time of a crash. Such a report can provide valuable first-hand information for a Linux kernel maintainer to conduct postmortem debugging. Recently, a repository has been created that systematically collects kernel oopses from Linux users. However, debugging based on only the information in a kernel oops is difficult. We consider the initial problem of finding the offending line, i.e., the line of source code that incurs the crash. For this, we propose a novel algorithm based on approximate sequence matching, as used in bioinformatics, to automatically pinpoint the offending line based on information about nearby machine-code instructions, as found in a kernel oops. Our algorithm achieves 92% accuracy compared to 26% for the traditional approach of using only the oops instruction pointer.

URLhttp://doi.acm.org/10.1145/2597073.2597094
DOI10.1145/2597073.2597094
Full Text
AttachmentSize
PDF icon guo.pdf485.69 KB