Linux Variability Anomalies: What Causes Them and How Do They Get Fixed?

Nadi S, Dietrich C, Tartler R, Holt RC, Lohmann D (2013)


Publication Type: Conference contribution

Publication year: 2013

Publisher: IEEE Computer Society

Edited Volumes: IEEE International Working Conference on Mining Software Repositories

City/Town: Los Alamitos, CA, USA

Pages Range: 111-120

Conference Proceedings Title: Proceedings of the 10th Working Conference on Mining Software Repositories

Event location: San Francisco, CA, USA

ISBN: 978-1-4673-2936-1

URI: http://www4.cs.fau.de/Publications/2013/nadi_13_msr.pdf

DOI: 10.1109/MSR.2013.6624017

Abstract

The Linux kernel is one of the largest configurable open source software systems implementing static variability. In Linux, variability is scattered over three different artifacts: source code files, KCONFIG files, and Makefiles. Previous work detected inconsistencies between these artifacts that led to anomalies in the intended variability of Linux. We call these variability anomalies. However, there has been no work done to analyze how these variability anomalies are introduced in the first place, and how they get fixed. In this work, we provide an analysis of the causes and fixes of variability anomalies in Linux. We first perform an exploratory case study that uses an existing set of patches which solve variability anomalies to identify patterns for their causes. The observations we make from this dataset allow us to develop four research questions which we then answer in a confirmatory case study on the scope of the whole Linux kernel. We show that variability anomalies exist for several releases in the kernel before they get fixed, and that contrary to our initial suspicion, typos in feature names do not commonly cause these anomalies. Our results show that variability anomalies are often introduced through incomplete patches that change KCONFIG definitions without properly propagating these changes to the rest of the system. Anomalies are then commonly fixed through changes to the code rather than to KCONFIG files. © 2013 IEEE.

Authors with CRIS profile

Involved external institutions

How to cite

APA:

Nadi, S., Dietrich, C., Tartler, R., Holt, R.C., & Lohmann, D. (2013). Linux Variability Anomalies: What Causes Them and How Do They Get Fixed? In Proceedings of the 10th Working Conference on Mining Software Repositories (pp. 111-120). San Francisco, CA, USA: Los Alamitos, CA, USA: IEEE Computer Society.

MLA:

Nadi, Sarah, et al. "Linux Variability Anomalies: What Causes Them and How Do They Get Fixed?" Proceedings of the MRS 2013: The 10th Working Conference on Mining Software Repositories, San Francisco, CA, USA Los Alamitos, CA, USA: IEEE Computer Society, 2013. 111-120.

BibTeX: Download