Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Linux Foundation

Finding Unmet Dependencies in Kconfig with the Kismet Static Analyzer

Linux Foundation via YouTube

Overview

Explore the challenges of maintaining Linux's highly configurable kernel and learn about the Kismet Static Analyzer in this 25-minute conference talk. Dive into the complexities of managing approximately 15,000 configuration options across 150,000 lines of Kconfig. Understand the concept of unmet dependency bugs and how they affect the build system. Follow the speaker's approach to automatically analyzing the build system, focusing on modeling Kconfig in symbol logic and checking selects for unmet dependencies. Examine the experimental setup, including precision, recall, and performance metrics. Gain insights into the impact of this research and meet the student members of the project team. Conclude with a comprehensive understanding of how static analysis tools can improve Linux kernel configuration management.

Syllabus

linux works on lots of devices
the kernel is ultra-configurable
configurability makes maintenance harder
there's about 15,000 configuration options
written in about 150,000 lines of Kconfig
what does the build system do?
our goal: automatically analyze the build system
today's focus: Kconfig's unmet dependency bugs
kconfig language example
the unmet dependency bug
an unmet dependency bug in the wild
we first model Kconfig in symbol logic
we check every select for an unmet dependency
experimental setup
precision (true positives)
recall (false negatives)
performance
impact
student members of project team
conclusion

Taught by

Linux Foundation

Reviews

Start your review of Finding Unmet Dependencies in Kconfig with the Kismet Static Analyzer

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.