September 27-30, 2021
Seattle, Washington, USA + Virtual
View More Details & Registration

The Sched app allows you to build your schedule but is not a substitute for your event registration. You must be registered for Open Source Summit + Embedded Linux Conference + OSPOCon 2021 to participate in the sessions. If you have not registered but would like to join us, please go to the event registration page to purchase a registration.

This schedule is automatically displayed in Pacific Daylight Time (UTC -7). To see the schedule in your preferred timezone, please select from the drop-down menu to the right, above "Filter by Date." The schedule is subject to change.

IMPORTANT NOTE: Timing of sessions and room locations are subject to change.

Back To Schedule
Wednesday, September 29 • 4:55pm - 5:45pm
(VIRTUAL) Finding Unmet Dependencies in Kconfig with the Kismet Static Analyzer - Paul Gazzillo, University of Central Florida

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Linux developers specify legal uses of configuration options in the Kconfig language. With over 140,000 lines of Kconfig specifications in the Linux kernel, its complex behavior makes maintenance challenging. A common pitfall, highlighted in Kconfig’s manual, is the unmet dependency bug, which happens when an option’s reverse dependencies override its direct dependencies. Unmet dependencies allow an invalid kernel configuration to slip by Kconfig and potentially break the build. This talk introduces a static analysis tool, called kismet, that uses automated logical reasoning checks to check for unmet dependencies in a Kconfig specification database. The talk covers the technical details of the analyzer as well an evaluation showing that kismet finds 781 unmet dependencies (151 when considering sharing among each architecture's Kconfig specifications) for one recent version of the Linux source code, although it misses some due to limitations in handling string and number configuration options. All found unmet dependency bugs have been validated by automatically creating a .config file that triggers it. kismet takes between 37 and 90 minutes for each architecture's Kconfig specification, for a total of about 20 hours for all 28 architecture's Kconfig specifications.

avatar for Paul Gazzillo

Paul Gazzillo

Assistant professor, University of Central Florida
Paul Gazzillo is an Assistant Professor of Computer Science at University of Central Florida. His research aims to make it easier to develop safe and secure software, and it spans programming languages, security, software engineering, and systems. Projects include program analysis... Read More →

Wednesday September 29, 2021 4:55pm - 5:45pm PDT
MeetingPlay Platform + Virtual Learning Lab