πŸ“’ Actions Speak Louder Than Words!

Fedora - koji kernel regression testing

Posted: Dec 31, 2020 | Reading time: 5 min

I will show how to get latest kernel from Koji for testing purpose. For your infomation, Koji build packages take times to appear on updates-testing repository.

The faster way to get latest kernel the is manually download from Koji. As example here, on this blog post I will show how I will load kernel kernel-5.10.4-200 to my Fedora 33 Workstation.

Firstly check the latest success build kernel here

For example, I will use this build

Information for build kernel-5.10.4-200.fc33
ID  1663265
Package Name    kernel
Version 5.10.4
Release 200.fc33
Epoch   
Source  git+https://src.fedoraproject.org/rpms/kernel.git#8c6d36397de31b4bed81f30aa8e01a0226db3e4c
Summary The Linux kernel
Description The kernel meta package
Built by    jforbes
State   complete
Volume  DEFAULT
Started Wed, 30 Dec 2020 18:00:59 UTC
Completed   Wed, 30 Dec 2020 20:39:38 UTC
Task    build (f33-candidate, /rpms/kernel.git:8c6d36397de31b4bed81f30aa8e01a0226db3e4c)
Extra   {'source': {'original_url': 'git+https://src.fedoraproject.org/rpms/kernel.git#8c6d36397de31b4bed81f30aa8e01a0226db3e4c'}}

How to install latest kernel from koji?

To grab all the rpms, I will use this command:

robbi@r0x: pts/0: /home/robbi/Documents/workspace/kernel-koji 0 files 8.0Kb
 └─ $ koji download-build --arch=x86_64 kernel-5.10.4-200.fc33

It will download almost 12 files (162mb) to my current directory

robbi@r0x: pts/0: /home/robbi/Documents/workspace/kernel-koji 12 files 162Mb
 └─ $ ls -lrta
total 164988
drwxr-xr-x. 5 robbi robbi     4096 Dec 31 16:28 ..
-rw-r--r--. 1 robbi robbi     8901 Dec 31 16:30 kernel-debug-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi     8793 Dec 31 16:30 kernel-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi   120133 Dec 31 16:30 kernel-modules-internal-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi   130073 Dec 31 16:30 kernel-debug-modules-internal-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi  2175141 Dec 31 16:30 kernel-debug-modules-extra-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi  2093205 Dec 31 16:30 kernel-modules-extra-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi 31889381 Dec 31 16:31 kernel-modules-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi 34796405 Dec 31 16:31 kernel-core-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi 36655709 Dec 31 16:32 kernel-debug-core-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi 32596981 Dec 31 16:32 kernel-debug-modules-5.10.4-200.fc33.x86_64.rpm
-rw-r--r--. 1 robbi robbi 14263665 Dec 31 16:33 kernel-debug-devel-5.10.4-200.fc33.x86_64.rpm
drwxr-xr-x. 2 robbi robbi     4096 Dec 31 16:33 .
-rw-r--r--. 1 robbi robbi 14165873 Dec 31 16:33 kernel-devel-5.10.4-200.fc33.x86_64.rpm

Let install it

robbi@r0x: pts/0: /home/robbi/Documents/workspace/kernel-koji 12 files 162Mb
 └─ $ sudo dnf update kernel*
 .
 .
 .
================================================================================================================================================================================================
 Package                                              Architecture                           Version                                         Repository                                    Size
================================================================================================================================================================================================
Installing:
 kernel                                               x86_64                                 5.10.4-200.fc33                                 @commandline                                 8.6 k
 kernel-core                                          x86_64                                 5.10.4-200.fc33                                 @commandline                                  33 M
 kernel-devel                                         x86_64                                 5.10.4-200.fc33                                 @commandline                                  14 M
 kernel-modules                                       x86_64                                 5.10.4-200.fc33                                 @commandline                                  30 M
 kernel-modules-extra                                 x86_64                                 5.10.4-200.fc33                                 @commandline                                 2.0 M

Transaction Summary
================================================================================================================================================================================================
Install  5 Packages

Total size: 79 M
Installed size: 158 M
Is this ok [y/N]: y

After you are done, pls reboot and let check our machine :

robbi@r0x: pts/0: /home/robbi/Documents/workspace/kernel-koji 13 files 162Mb
 └─ $ uname -a
Linux r0x 5.10.4-200.fc33.x86_64 #1 SMP Wed Dec 30 18:20:23 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

For precautions, let check our dnf history

robbi@r0x: pts/0: /home/robbi/Documents/workspace/kernel-koji 13 files 162Mb
 └─ $ dnf history info last
Transaction ID : 17
Begin time     : Thu 31 Dec 2020 04:44:13 PM +08
Begin rpmdb    : 1448:2ae6f413e5cbe0a6650c5a4d848b6ab6bc1d536d
End time       : Thu 31 Dec 2020 04:46:34 PM +08 (141 seconds)
End rpmdb      : 1453:fa11ecb47317ee0e806a4adbe397892098732613
User           : robbi <robbi>
Return-Code    : Success
Releasever     : 33
Command Line   : update kernel-5.10.4-200.fc33.x86_64.rpm kernel-core-5.10.4-200.fc33.x86_64.rpm kernel-debug-5.10.4-200.fc33.x86_64.rpm kernel-debug-core-5.10.4-200.fc33.x86_64.rpm kernel-debug-devel-5.10.4-200.fc33.x86_64.rpm kernel-debug-modules-5.10.4-200.fc33.x86_64.rpm kernel-debug-modules-extra-5.10.4-200.fc33.x86_64.rpm kernel-debug-modules-internal-5.10.4-200.fc33.x86_64.rpm kernel-devel-5.10.4-200.fc33.x86_64.rpm kernel-modules-5.10.4-200.fc33.x86_64.rpm kernel-modules-extra-5.10.4-200.fc33.x86_64.rpm kernel-modules-internal-5.10.4-200.fc33.x86_64.rpm
Comment        :
Packages Altered:
    Install kernel-5.10.4-200.fc33.x86_64               @@commandline
    Install kernel-core-5.10.4-200.fc33.x86_64          @@commandline
    Install kernel-devel-5.10.4-200.fc33.x86_64         @@commandline
    Install kernel-modules-5.10.4-200.fc33.x86_64       @@commandline
    Install kernel-modules-extra-5.10.4-200.fc33.x86_64 @@commandline

Nice, now let prepare the test using tool that provided

$ sudo dnf install gcc git python3-fedora make libtirpc libtirpc-devel policycoreutils-python-utils
$ git clone https://pagure.io/kernel-tests.git
$ sudo semanage boolean -m --on selinuxuser_execheap #Allow testsuite to make their heap memory executable
$ cd kernel-tests
$ cp config.example .config 
$ vi .config # add your FAS username

Are you ready? Let execute the test

$ sudo ./runtests.sh
$ sudo ./runtests.sh -t performance

After you done, revert SELINUX heap memory executable permission

$ sudo semanage boolean -m --off selinuxuser_execheap

How to revert changes?

reboot your workstation and choose previous kernel from grub menu.

 $ uname -a
Linux r0x 5.9.16-200.fc33.x86_64 #1 SMP Mon Dec 21 14:08:22 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Open your terminal and execute sudo dnf history undo last :

 $ sudo dnf history undo last
Last metadata expiration check: 1:35:00 ago on Thu 31 Dec 2020 04:28:09 PM +08.
Undoing transaction 17, from Thu 31 Dec 2020 04:44:13 PM +08
    Install kernel-5.10.4-200.fc33.x86_64               @@commandline
    Install kernel-core-5.10.4-200.fc33.x86_64          @@commandline
    Install kernel-devel-5.10.4-200.fc33.x86_64         @@commandline
    Install kernel-modules-5.10.4-200.fc33.x86_64       @@commandline
    Install kernel-modules-extra-5.10.4-200.fc33.x86_64 @@commandline
Dependencies resolved.
================================================================================================================================================================================================
 Package                                             Architecture                          Version                                           Repository                                    Size
================================================================================================================================================================================================
Removing:
 kernel                                              x86_64                                5.10.4-200.fc33                                   @@commandline                                  0
 kernel-core                                         x86_64                                5.10.4-200.fc33                                   @@commandline                                 74 M
 kernel-devel                                        x86_64                                5.10.4-200.fc33                                   @@commandline                                 53 M
 kernel-modules                                      x86_64                                5.10.4-200.fc33                                   @@commandline                                 30 M
 kernel-modules-extra                                x86_64                                5.10.4-200.fc33                                   @@commandline                                1.9 M

Transaction Summary
================================================================================================================================================================================================
Remove  5 Packages

Freed space: 158 M
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                                        1/1
  Erasing          : kernel-modules-extra-5.10.4-200.fc33.x86_64                                                                                                                            1/5
  Running scriptlet: kernel-modules-extra-5.10.4-200.fc33.x86_64                                                                                                                            1/5
  Erasing          : kernel-5.10.4-200.fc33.x86_64                                                                                                                                          2/5
  Erasing          : kernel-modules-5.10.4-200.fc33.x86_64                                                                                                                                  3/5
  Running scriptlet: kernel-modules-5.10.4-200.fc33.x86_64                                                                                                                                  3/5
  Running scriptlet: kernel-core-5.10.4-200.fc33.x86_64                                                                                                                                     4/5
  Erasing          : kernel-core-5.10.4-200.fc33.x86_64                                                                                                                                     4/5
warning: file /lib/modules/5.10.4-200.fc33.x86_64/updates: remove failed: No such file or directory

  Erasing          : kernel-devel-5.10.4-200.fc33.x86_64                                                                                                                                    5/5
  Running scriptlet: kernel-devel-5.10.4-200.fc33.x86_64                                                                                                                                    5/5
  Verifying        : kernel-5.10.4-200.fc33.x86_64                                                                                                                                          1/5
  Verifying        : kernel-core-5.10.4-200.fc33.x86_64                                                                                                                                     2/5
  Verifying        : kernel-devel-5.10.4-200.fc33.x86_64                                                                                                                                    3/5
  Verifying        : kernel-modules-5.10.4-200.fc33.x86_64                                                                                                                                  4/5
  Verifying        : kernel-modules-extra-5.10.4-200.fc33.x86_64                                                                                                                            5/5

Removed:
  kernel-5.10.4-200.fc33.x86_64  kernel-core-5.10.4-200.fc33.x86_64  kernel-devel-5.10.4-200.fc33.x86_64  kernel-modules-5.10.4-200.fc33.x86_64  kernel-modules-extra-5.10.4-200.fc33.x86_64

Complete!

You can reboot to check but at this point the kernel we install from koji are already removed from our system succesfully.

Edit

Discussion and feedback

You can use utterances provided below to post comment on behalf using Github account. Alternatively, you can just send a public comment to my mailing list or send a private message to my e-mail. In a few cases and on certain time, I just don’t have time to moderate them. Please read terms-of-service (ToS) for details.