How Does Linux Work? | Greg Kroah-Hartman

Wookash Podcast Wookash Podcast Jun 06, 2025

Audio Brief

Show transcript
This episode explores the unique culture and technical realities of Linux kernel development with maintainer Greg Kroah-Hartman. There are four key takeaways from this conversation. First, successful long-term software projects prioritize human collaboration through consistent style, readable code, and an incremental, review-focused process. Second, a stable, backward-compatible public API is paramount for building a lasting and trustworthy platform. Third, massive, complex systems can be effectively managed without a central plan by empowering a distributed network of experts and evolving in response to real-world needs. Fourth, the aggregation of many individual, problem-solving contributions collectively creates powerful public goods. The Linux kernel emphasizes writing code for people first, not just the compiler. This philosophy fosters clarity, consistency, and long-term maintainability across its vast codebase. Development relies on submitting small, incremental patches, ensuring thorough community review and high quality through collaboration. The single most important rule in kernel development is the no regressions policy for the user-space API. This guarantee ensures backward compatibility for applications, providing a stable foundation that users and developers can trust for decades. Kernel development is evolutionary and reactive, not driven by a pre-planned roadmap. It adapts to solve real-world problems presented by new hardware, security threats, and diverse use cases. No single person understands the entire 40 million line codebase; knowledge is distributed among hundreds of specialized subsystem maintainers, forming a meritocracy built on individual trust and expertise. The kernel's success stems from individual developers solving their own specific problems, which collectively builds a robust and versatile system. The Linux Foundation supports this by handling legal and logistical aspects, allowing developers to focus on technical work in a vendor-neutral environment, benefiting the entire ecosystem. This approach highlights how a distributed, trust-based model can drive the continuous evolution of critical global infrastructure.

Episode Overview

  • Greg Kroah-Hartman shares his personal journey into Linux kernel development and explains the culture of trust and individual meritocracy that underpins the community.
  • The conversation delves into the technical realities of kernel development, including the simple toolset, the "no regressions" rule for the user-space API, and the philosophy of writing code for human readability.
  • The development process is revealed to be an evolutionary one, driven by incremental patches and community review rather than a formal roadmap, with a relentless, time-based release cycle.
  • The role of the Linux Foundation is clarified as a neutral non-profit that handles the legal and logistical aspects, allowing developers to focus on the technical work for the benefit of the entire ecosystem.

Key Concepts

  • The Linux kernel development community is a meritocracy built on trust, where maintainership is tied to individuals, not their employers, fostering long-term expertise.
  • The single most important rule is the "no regressions" policy, guaranteeing that the user-space API will not break, which ensures backward compatibility for applications.
  • Development is evolutionary and reactive, not based on a pre-planned roadmap. It adapts to solve real-world problems presented by new hardware, security threats, and use cases.
  • The "Show me the code" philosophy requires contributions to be submitted as a series of small, incremental, and reviewable patches rather than abstract proposals, which improves quality through collaboration.
  • No single person understands the entire kernel codebase, which exceeds 40 million lines. Knowledge is distributed among hundreds of specialized subsystem maintainers.
  • Code is written for "people first, compiler second," emphasizing clarity, consistency, and long-term maintainability through a shared coding style and common infrastructure.
  • The kernel has a predictable, time-based release cycle of 9-10 weeks, consisting of a two-week merge window for new features followed by a 7-8 week stabilization period for bug fixes.
  • The Linux Foundation acts as a neutral non-profit trade organization, handling legal, marketing, and logistical support, allowing developers to work in a vendor-neutral environment.

Quotes

  • At 7:43 - "No." - Kroah-Hartman's direct and unequivocal answer when asked if any single person understands the entire Linux kernel codebase.
  • At 11:18 - "We have that interface between the user-space and kernel...that's an API that we guarantee will not break." - On the Linux kernel's strict rule of maintaining backward compatibility for user-space applications.
  • At 24:43 - "We write code for people first, compiler second because we know we're going to have to maintain this stuff forever." - Stating the core philosophy behind the Linux kernel's coding standards, emphasizing readability for long-term collaboration.
  • At 59:03 - "Well, we don't have a roadmap. We have no plans... It's not intelligent design, it's evolution." - Kroah-Hartman describes the kernel's development model as reactive and adaptive rather than being driven by a pre-planned, top-down design.
  • At 78:05 - "'Show your work.' Show me each little tiny individual step along the way." - Kroah-Hartman explaining the kernel development philosophy of breaking down large changes into small, logical patches.

Takeaways

  • The success of a large-scale, long-term software project hinges on prioritizing human collaboration through consistent style, readable code, and an incremental, review-focused process.
  • A stable, backward-compatible public API is the most critical feature for building a lasting and trustworthy platform.
  • Massive, complex systems can be managed effectively without a central plan by empowering a distributed network of experts and evolving in response to real-world needs.
  • The aggregation of many "selfish" contributions, where individuals solve their own specific problems, can collectively create a powerful and versatile public good.