Member training: Upstream Kernel Development

This course will be held in 2 sessions. [ Part I: Mechanics ] takes place on Tuesday, Nov 29 at either 08:00am and 04:00pm GMT (depending on your timezone). [ Part II: Tips, tools and techniques ] is on Tuesday Dec 6 at either 08:00am and 04:00pm GMT. Sessions will be two and a half hours long.

Visit Website

Upstream Kernel Development shows trainees how to contribute to the Linux kernel. This includes understanding the role of kernel maintainers, how to best align their work with the Linux release schedule, how to handle feedback and what to do if things don’t go to plan.

This course covers the “social” aspects of upstream kernel development. It is best suited to trainees who understand how to write kernel drivers and want ideas and pragmatic advice in order to engage more effectively with the wider kernel community. Trainees will learn how to confidently participate in upstream kernel development and, in particular, how to contribute new kernel drivers.

Part I: Mechanics

  • What is Upstreaming?
  • How the Linux project is organised
  • How to Upstream?

    • Patch Preparation
    • Patch Creation
    • Patch Posting
    • Feedback
    • Maintenance
    • Worked example
  • Lab/homework

    • Further reading
    • Minarai - Learning by watching

Part II: Tips, tools and techniques

  • Talking with upstream
  • Tags
  • Thinking like a maintainer
  • Kernel versioning and release flow
  • Sharp tools and smart techniques

    • Train your style
    • Filtering mailing lists
    • Source navigation
    • Static checkers
    • Handling regressions and bisectability testing
  • What do do when you are ignored
  • Case study: Mailbox upstreaming

Recent Posts

    Other Posts