spl build failure on a clean install of Wily

Bug #1536299 reported by Colin Ian King
26
This bug affects 8 people
Affects Status Importance Assigned to Milestone
spl-linux (Ubuntu)
Fix Released
High
Colin Ian King
Wily
Fix Released
High
Colin Ian King

Bug Description

SRU request, Wily.

[IMPACT]
Installing ZFS on a clean machine that does not have libc-dev installed will end in a DKMS build failure on the Solaris Porting Layer module.

[TEST CASE]
Do a clean install of Ubuntu Wily server
sudo apt-get update && sudo apt-get dist-upgrade
sudo apt-get install zfsutils-linux

Without the fix, this breaks. With the fix SPL builds OK and ZFS installs.

[REGRESSION POTENTIAL]
Minimal, this just adds one dependency in for spl-dkms, and this package will ultimately get installed later on during the zfsutils-linux installation. This fix causes it to be installed earlier on during the installation.

----------------

On a totally clean server install of Wily installing zfsutils-linux ends up with a build failure of spl, typically:

Setting up zfs-dkms (0.6.4.2-0ubuntu1.2) ...
Loading new zfs-0.6.4.2 DKMS files...
First Installation: checking all kernels...
Building only for 4.2.0-25-generic
Building initial module for 4.2.0-25-generic
configure: error:
        *** Please make sure the kmod spl devel <kernel> package for your
        *** distribution is installed then try again. If that fails you
        *** can specify the location of the spl objects with the
        *** '--with-spl-obj=PATH' option.
Error! Bad return status for module build on kernel: 4.2.0-25-generic (x86_64)
Consult /var/lib/dkms/zfs/0.6.4.2/build/make.log for more information.

The issue is that the configure script in SPL is building a simple test program but the linking fails because libc-dev is not yet installed even though gcc is. The libc-dev package gets installed a little while later.

A fix is to modify spl-linux: debian/control and add in the libc-dev dependency on spl-dkms to ensure this package is already installed before SPL runs the test.

Package: spl-dkms
Depends: ${misc:Depends}, libc-dev, dkms (>= 2.2.0.2), file, lsb-release
Recommends: spl

Normally, dkms driver builds just build against the kernel without such pre-checks, so we don't hit this with normal dkms packages. Note that this issue does not seem to bite a lot of users probably because libc-dev is already installed.

Revision history for this message
Colin Ian King (colin-king) wrote :

For reference, I've posted my findings in ZFS bug report that was open against this issue in Debian: https://github.com/zfsonlinux/zfs/issues/3065

Changed in zfs-linux (Ubuntu):
status: New → In Progress
importance: Undecided → High
assignee: nobody → Colin Ian King (colin-king)
Revision history for this message
Colin Ian King (colin-king) wrote :
description: updated
description: updated
Revision history for this message
Chris J Arges (arges) wrote :

Does this also affect Xenial?

Revision history for this message
Chris J Arges (arges) wrote :

Uploaded for Wily.

Changed in zfs-linux (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Brian Murray (brian-murray) wrote :

This wasn't Fix Released by the janitor because the package assigned was zfs-linux when the fix appeared in spl-linux.

affects: zfs-linux (Ubuntu) → spl-linux (Ubuntu)
Changed in spl-linux (Ubuntu):
status: Fix Committed → Fix Released
Changed in spl-linux (Ubuntu Wily):
status: New → Fix Committed
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Colin, or anyone else affected,

Accepted spl-linux into wily-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/spl-linux/0.6.4.2-0ubuntu1.1 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 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, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

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

Changed in spl-linux (Ubuntu Wily):
importance: Undecided → High
assignee: nobody → Colin Ian King (colin-king)
Revision history for this message
Colin Ian King (colin-king) wrote :

verified, works OK

Clean install of wily, added -proposed (universe), updated, installed zfsutils-linux, this pulled in the fixed spl which built fine.

tags: added: verification-done
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package spl-linux - 0.6.4.2-0ubuntu1.1

---------------
spl-linux (0.6.4.2-0ubuntu1.1) wily; urgency=medium

  * Fix build failure of SPL because libc-dev is missing (LP: #1536299)

 -- Colin Ian King <email address hidden> Wed, 20 Jan 2016 19:05:29 +0000

Changed in spl-linux (Ubuntu Wily):
status: Fix Committed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for spl-linux has completed successfully and the package has now been 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.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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