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¶
Open “Software & Updates”.
Go to the “Developer Options” tab.
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:
[stress-ng]
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:
Run the
ubuntu-bugtool on the system with the newly installed kernel.ubuntu-bug
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.