How to test pre-release Ubuntu kernels

Pre-release Ubuntu kernels are available in the Canonical Kernel Team (CKT) build PPAs and -proposed pocket before they are published to -updates. To install these pre-release kernels you need to opt in, as neither source is enabled by default.

This guide explains how to enable and test pre-release Ubuntu kernels, and how to report any regressions you find.

Caution

Kernels published to the build PPAs are not suitable for production systems - enabling them could cause boot failures or regressions and is not recommended.

For details on the kernel lifecycle, see the Ubuntu kernel SRU lifecycle.

Enable the -proposed pocket to software sources

To install packages from -proposed, you need to enable the relevant source repositories on your Ubuntu machine.

Enable the -proposed pocket via GUI

  1. Open “Software & Updates”.

  2. Go to the “Developer Options” tab.

  3. Enable the Pre-released updates (<series>-proposed) option.

Enable the -proposed pocket via CLI

Add “<series>-proposed” (e.g. “noble-proposed”) to the Suites: line in the /etc/apt/sources.list.d/ubuntu.sources file.

Types: deb
URIs: http://archive.ubuntu.com/ubuntu
Suites: noble noble-updates noble-backports <series>-proposed
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Add “<series>-proposed” (e.g. “jammy-proposed”) to the following line in:

  • /etc/apt/sources.list:

    deb http://archive.ubuntu.com/ubuntu/ <series>-proposed restricted main multiverse universe
    
  • /etc/apt/sources.list (for non-x86 architectures):

    deb http://ports.ubuntu.com/ubuntu-ports <series>-proposed restricted main multiverse universe
    

Enable the CKT build PPA

You can add the CKT build PPAs to your system as follows:

sudo add-apt-repository ppa:canonical-kernel-team/ppa
sudo add-apt-repository ppa:canonical-kernel-team/ppa2

Warning

Do remember that these kernels may be entirely untested at time of download and thus potentially fundamentally broken. Only test from build PPAs if you have a reason to do so. Do not test from build PPAs if you have Secure Boot enabled.

Install the pre-release kernel

First, update the sources cache:

sudo apt update

Then proceed to install the kernel using either a metapackage or a specific ABI-named image.

Install via kernel metapackage

Use this approach if you want to receive automatic updates for the latest version of the kernel in that series.

If the kernel version in -proposed is the highest in any pocket, run:

sudo apt install linux-<flavor>

If you want a specific (earlier) version of a metapackage, include the version in the command:

sudo apt install linux-<flavor>=<version>

Install via ABI-named kernel image

Use this method to install a specific kernel version without being tied to the kernel series metapackage.

sudo apt install linux-image-<abi>-<flavor>

Boot into the new kernel

After installing the kernel, reboot your machine. After booting up again, verify that the correct kernel is loaded with:

uname -r

This should print the correct kernel version and flavor.

Test the kernel

Once you have the new kernel installed, testing can begin.

If you do not have your own test suite and need an example workload, you can start with the built-in Linux selftests. To run these selftests, download the kernel source and compile the tests.

apt source linux-image-unsigned-$(uname -r)
cd <kernel_source_working_directory>
sudo make -C tools/testing/selftests run_tests

For other examples of kernel testing projects, see:

Report regression bugs

If you encounter a regression or bug while testing the kernel, please file a bug report on Launchpad. You can submit your report using any of the following methods:

  1. Run the ubuntu-bug tool on the system with the newly installed kernel.

    ubuntu-bug
    
  2. Manually file a bug online at https://bugs.launchpad.net/ubuntu/+filebug. Make sure to target the correct kernel source package and Ubuntu series.

For more information on Ubuntu bug reporting, see Reporting Bugs.