LockDoc: Trace-based analysis of locking in the linux kernel

Autor(en): Lochmann, A.
Schirmeier, H.
Borghorst, H.
Spinczyk, O. 
Stichwörter: Data structures; Locks (fasteners), Concurrency bugs; Execution trace; Fine grained; Kernel threads; Linux kernel; Locking mechanism; Rule violation; Source codes, Linux
Erscheinungsdatum: 2019
Herausgeber: Association for Computing Machinery, Inc
Journal: Proceedings of the 14th EuroSys Conference 2019
Zusammenfassung: 
For fine-grained synchronization of application and kernel threads, the Linux kernel provides a multitude of different locking mechanisms that are being used on various individually locked data structures. Understanding which locks are required in which order for a particular member variable of a kernel data structure has become truly difficult, even for Linux-kernel experts themselves. In this paper we introduce LockDoc – an approach that, based on the analysis of execution traces of an instrumented Linux kernel, automatically deduces the most likely locking rule for all members of arbitrary kernel data structures. From these locking rules, LockDoc generates documentation that supports kernel developers and helps avoiding concurrency bugs. Additionally, the (very limited) existing documentation can be verified, and locking-rule violations – potential bugs in the kernel code – can be found. Our results include generated locking rules for previously predominantly undocumented member variables of 11 different Linux-kernel data structures. Manually inspecting the scarce source-code documentation for five of these data structures reveals that only 53 percent of the variables with a documented locking rule are actually consistently accessed with the required locks held. This indicates possible documentation or synchronization bugs in the Linux kernel, of which one has already been confirmed by kernel experts. © 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM.
Beschreibung: 
Conference of 14th European Conference on Computer Systems, EuroSys 2019 ; Conference Date: 25 March 2019 Through 28 March 2019; Conference Code:146334
ISBN: 9781450362818
DOI: 10.1145/3302424.3303948
Externe URL: https://www.scopus.com/inward/record.uri?eid=2-s2.0-85063871863&doi=10.1145%2f3302424.3303948&partnerID=40&md5=2bb1137b3cbb1bf2f5c9529c90a39779

Zur Langanzeige

Seitenaufrufe

13
Letzte Woche
0
Letzter Monat
0
geprüft am 19.05.2024

Google ScholarTM

Prüfen

Altmetric