2 min read

Here's How System76 Will Test Linux Kernel 5.16 For Pop OS (And Ubuntu)

UPDATE: Kernel 5.16 has been released, so while the introduction below is outdated, the checklist remains accurate!

Pop OS 21.10 launches today, and it ushers in a much newer Linux kernel than Ubuntu 21.10. While Pop OS is based on Ubuntu, the company is slowly decreasing its reliance on Canonical’s distro. People paying attention to the goings-on at System76 may have noticed a tendency toward “leading edge” (but not bleeding edge) updates in the past several months.

In an ongoing effort to better serve its hardware customers, System76 is increasing the speed at which it injects Pop OS with newer kernels (and newer Nvidia drivers, for that matter). Ubuntu 21.10 uses kernel 5.13, while today’s Pop OS 21.10 ships with a much more modern kernel 5.15.5.

One of the concerns rattling around inside my head, however, has been the issue of quality assurance. I’m 100% behind frequent kernel updates, but that’s because I’m a gamer, early hardware adopter, and all-around Linux enthusiast. I’m certain that a huge slice of Pop OS users prefers rock-solid stability.

So I put the question to System76 directly: What exactly goes into new kernel testing? The company’s “QA Rockstar” Levi Portenier didn’t disappoint with the answer.

The Complete Kernel QA Checklist @ System76

Here’s a detailed look at the exact process that goes into quality assurance testing of new kernels:

# Kernel Releases Tests
- [ ] Updating to new kernel works with `apt update && apt upgrade`
    - [ ] No new dependencies are required for kernel update
- [ ] `system76-power` still opperates as expected (across Intel/NVIDIA/switchable machines)
- [ ] Mic in
- [ ] Audio out:
    - [ ] Laptop's built-in speakers
    - [ ] Headphones
    - [ ] Display Port
    - [ ] HDMI
- [ ] Video out via:
    - [ ] DisplayPort
    - [ ] HDMI
- [ ] Thunderbolt docking station:
    - [ ] HDMI and DisplayPort
    - [ ] External storage device
    - [ ] Networking
- [ ] ZFS
- [ ] DisplayLink docking station
- [ ] Suspend and resume:
    - [ ] Switchable graphics laptops
        - [ ] In Hybrid graphics mode
        - [ ] In Nvidia graphics mode
        - [ ] In Integrated graphics mode
    - [ ] Nvidia desktop
    - [ ] Discrete AMD desktop
    - [ ] Integrated Intel desktop
    - [ ] Integrated AMD desktop
    - [ ] 150 suspend/resume cycles (`fwts s3 --s3-multiple 150`)
- [ ] Kernel works in:
    - [ ] Ubuntu LTS
    - [ ] Pop!\_OS LTS
    - [ ] Latest Pop!\_OS
- [ ] Graphics drivers included in the kernel (Intel/AMD)
    - [ ] Switchable/hybrid graphics and graphics switching
- [ ] Steam
    - [ ] Steam installs via the Pop!_OS .deb in Pop!_Shop
    - [ ] Steam launches from launcher
    - [ ] Linux native game installs and runs
    - [ ] Proton game installs and runs

I’m far from an expert, but this looks satisfyingly thorough. That’s not where the work ends though.

“Once all those items get checked off, the QA team installs testing kernels on their hardware (both work and personal machines) and uses them for a while,” says Portenier.

https://openforeveryone.net/articles/system76-reduces-reliance-on-ubuntu-with-pop-os-change/

“If the kernel update is targeted at any specific issue, we test to make sure it’s actually fixed. If there are any interesting new features, we take those out for a spin and see how well they work and whether we can break them.”

“QA Rockstar” Levi Portenier

System76 also gives its customers the option to load up Ubuntu on its Thelio desktop PCs and various laptops. And yes, that Ubuntu installation will include the newer kernel too. The same one that’s used in Pop OS via the system76-dev/stable PPA.

Have you checked out Pop OS 21.10 yet? What do you think of the changes? Let me know down in the comments, or reach out and say hi on Twitter.