zfs-linux 0.8.3-1ubuntu12.4 ADT test failure with linux-hwe-5.8 5.8.0-25.26~20.04.1

Bug #1902701 reported by Stefan Bader
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
zfs-linux (Ubuntu)
Fix Released
Medium
Unassigned
Focal
Fix Released
Medium
Stefan Bader

Bug Description

[SRU Justification]

Impact: When attempting to compile the zfs-dkms module on a 5.8 kernel the module fails to properly configure the build. The kernel driver part of zfs-linux is only prepared to handle the kernels it released with. For Ubuntu kernels the zfs module is build based on the zfs-dkms that is current for the series the kernel originates from (so Groovy for 5.8). And this should be the encouraged way to do this.

Fix: Add a limitation to the dkms package to only build for supported kernels. This causes the whole build/install to be skipped on 5.8 rather than to fail.

Testcase: dkms install runs for 5.4 and 5.8 in Focal. For the 5.8 kernel this should result in:
Building initial module for 5.8.0-25-generic
Error! The /var/lib/dkms/zfs/0.8.3/5.8.0-25-generic/x86_64/dkms.conf for module zfs includes a BUILD_EXCLUSIVE directive which
does not match this kernel/arch. This indicates that it should not be built.
Skipped.

Regression Potential: Since the module fails to compile for the newer kernel there should be nothing that can regress.

---

Testing failed on:
    amd64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/z/zfs-linux/20201016_104632_e52aa@/log.gz
    arm64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/arm64/z/zfs-linux/20201016_144759_7735c@/log.gz
    ppc64el: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/ppc64el/z/zfs-linux/20201016_111820_ceeb8@/log.gz
    s390x: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/s390x/z/zfs-linux/20201016_082202_1adb7@/log.gz

Stefan Bader (smb)
tags: added: kernel-adt-failure
Changed in zfs-linux (Ubuntu Focal):
assignee: nobody → Stefan Bader (smb)
importance: Undecided → Medium
status: New → In Progress
Changed in zfs-linux (Ubuntu):
status: New → Invalid
Revision history for this message
Stefan Bader (smb) wrote :

The proposed update adds a BUILD_EXCLUSIVE_KERNEL directive to the dkms package. I have added a test build to https://launchpad.net/~smb/+archive/ubuntu/temp01/+packages and in a Focal VM which had the 5.4 and hwe-5.8 kernels installed, did an apt-get install zfs-dkms. This resulted in (relevant tail):

...
DKMS: install completed.
Building initial module for 5.8.0-25-generic
Error! The /var/lib/dkms/zfs/0.8.3/5.8.0-25-generic/x86_64/dkms.conf for module zfs includes a BUILD_EXCLUSIVE directive which
does not match this kernel/arch. This indicates that it should not be built.
Skipped.
Setting up g++-9 (9.3.0-17ubuntu1~20.04) ...
Setting up g++ (4:9.3.0-1ubuntu2) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.8ubuntu1.1) ...
Processing triggers for libc-bin (2.31-0ubuntu9.1) ...
Processing triggers for systemd (245.4-4ubuntu3.3) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for initramfs-tools (0.136ubuntu6.3) ...
update-initramfs: Generating /boot/initrd.img-5.8.0-25-generic

If I remember previous attempts with the current version correctly, the failure in the prepare stage resulted in the zfs related packages not bein fully installed.

Stefan Bader (smb)
description: updated
Revision history for this message
Colin Ian King (colin-king) wrote :

Thanks Stefan, I gave this a test and it works as expected. Package sponsored and uploaded.

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Stefan, or anyone else affected,

Accepted zfs-linux into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/zfs-linux/0.8.3-1ubuntu12.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in zfs-linux (Ubuntu Focal):
status: In Progress → Fix Committed
Revision history for this message
Kleber Sacilotto de Souza (kleber-souza) wrote :

I can confirm that zfs-linux 0.8.3-1ubuntu12.5 fixes the dkms installation error with linux 5.8 on Focal while still working with linux 5.4.

Setting up zfs-dkms (0.8.3-1ubuntu12.5) ...
Loading new zfs-0.8.3 DKMS files...
Building for 5.8.0-30-generic
Building initial module for 5.8.0-30-generic
Error! The /var/lib/dkms/zfs/0.8.3/5.8.0-30-generic/x86_64/dkms.conf for module zfs includes a BUIL
D_EXCLUSIVE directive which
does not match this kernel/arch. This indicates that it should not be built.
Skipped.

The smoke tests were also successful with the 5.8 kernel:

$ sudo ./debian/tests/kernel-smoke-test
Removing existing zfs modules
Unloading zfs
Unloading icp
Unloading zcommon
Unloading znvpair
Unloading zavl
Unloading spl
Loading new zfs modules
kernel smoke test, create and destroy pool, 2x2 mirror: PASSED
kernel smoke test, create and destroy pool, 4x1 mirror: PASSED
kernel smoke test, create and destroy pool, nested raidz3: PASSED
kernel smoke test, create and destroy pool, raidz1: PASSED
kernel smoke test, create and destroy pool, raidz2: PASSED
kernel smoke test, create and destroy pool, raidz3: PASSED
kernel smoke test, create and destroy pool, striped: PASSED
kernel smoke test, create and destroy ZFS Intent Log: PASSED
kernel smoke test, create and destroy ZFS filesystems: PASSED
kernel smoke test, ZFS snapshot: PASSED
kernel smoke test, ZFS clone: PASSED
kernel smoke test, ZFS send and receive: PASSED
kernel smoke test, corrupt data and clean with a scrub: PASSED
kernel smoke test, encrypted ZFS filesystems, load/unload keys: PASSED

ADT also completed successfully for both linux-generic 5.4 and linux-hwe 5.8:

* linux 5.4:
- amd64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/z/zfs-linux/20201119_163205_07089@/log.gz
- arm64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/arm64/z/zfs-linux/20201119_165530_b73f7@/log.gz
- ppc64el: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/ppc64el/z/zfs-linux/20201119_164146_76812@/log.gz
- s390x: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/s390x/z/zfs-linux/20201119_162758_07089@/log.gz

* linux-hwe 5.8:
- amd64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/z/zfs-linux/20201119_162748_82a89@/log.gz
- arm64: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/arm64/z/zfs-linux/20201119_163654_cf222@/log.gz
- ppc64el: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/ppc64el/z/zfs-linux/20201119_163259_90ac9@/log.gz
- s390x: https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/s390x/z/zfs-linux/20201119_162409_cf222@/log.gz

tags: added: verification-done-focal
Mathew Hodson (mhodson)
Changed in zfs-linux (Ubuntu):
status: Invalid → Fix Released
importance: Undecided → Medium
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package zfs-linux - 0.8.3-1ubuntu12.5

---------------
zfs-linux (0.8.3-1ubuntu12.5) focal; urgency=medium

  * Prevent build of the zfs-dkms binary package for kernels later than 5.4.
    If that is required, one should use the zfs-dkms package of a later series
    (like it is done for built-in modules of Ubuntu kernels). (LP: #1902701)

 -- Stefan Bader <email address hidden> Tue, 03 Nov 2020 18:05:38 +0100

Changed in zfs-linux (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for zfs-linux has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.