Re-verified trusty since the previous trusty comment was imprecise: dkms 2.2.0.3-1.1ubuntu5.14.04.10
Upgrading kernel and headers follows with a loadable, properly signed module using the MOK generated previously. ubuntu@ubuntu:~$ dpkg -l shim-signed dkms | cat Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=====================================-====================================================-============-=============================================================================== ii dkms 2.2.0.3-1.1ubuntu5.14.04.10 all Dynamic Kernel Module Support Framework ii shim-signed 1.33.1~14.04.4+13-0ubuntu2 amd64 Secure Boot chain-loading bootloader (Microsoft-signed binary) [...] Unpacking linux-headers-4.4.0-142-generic (4.4.0-142.168~14.04.1) ... Setting up linux-headers-4.4.0-142 (4.4.0-142.168~14.04.1) ... Setting up linux-headers-4.4.0-142-generic (4.4.0-142.168~14.04.1) ... Examining /etc/kernel/header_postinst.d. run-parts: executing /etc/kernel/header_postinst.d/dkms 4.4.0-142-generic /boot/vmlinuz-4.4.0-142-generic Nothing to do. Nothing to do. ubuntu@ubuntu:/lib/modules/4.4.0-142-generic$ cat /proc/version_signature Ubuntu 4.4.0-142.168~14.04.1-generic 4.4.167 ubuntu@ubuntu:/lib/modules/4.4.0-142-generic$ sudo modprobe bbswitch modprobe: ERROR: could not insert 'bbswitch': No such device ubuntu@ubuntu:/lib/modules/4.4.0-142-generic$ dmesg | tail [ 15.036233] audit: type=1400 audit(1550095748.630:15): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/connman/scripts/dhclient-script" pid=1004 comm="apparmor_parser" [ 15.036504] audit: type=1400 audit(1550095748.630:16): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/connman/scripts/dhclient-script" pid=1004 comm="apparmor_parser" [ 15.118903] audit: type=1400 audit(1550095748.714:17): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/tcpdump" pid=1006 comm="apparmor_parser" [ 15.273612] init: plymouth-upstart-bridge main process ended, respawning [ 16.272167] random: nonblocking pool is initialized [ 219.644638] bbswitch: loading out-of-tree module taints kernel. [ 219.644704] bbswitch: module verification failed: signature and/or required key missing - tainting kernel [ 219.645133] bbswitch: version 0.7 [ 219.645146] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.VID_ [ 219.645159] bbswitch: No discrete VGA device found ** Tags removed: verification-needed-xenial ** Tags added: verification-done-xenial -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to dkms in Ubuntu. https://bugs.launchpad.net/bugs/1772950 Title: dkms key enrolled in mok, but dkms module fails to load Status in dkms package in Ubuntu: Fix Released Status in dkms source package in Trusty: Fix Committed Status in dkms source package in Xenial: Fix Committed Status in dkms source package in Bionic: Fix Released Bug description: [Impact] All Ubuntu users for whom Secure Boot is enabled. [Test cases] 1) install dkms module (use virtualbox-dkms for example) 2) Upgrade kernel (for example, install 4.15.0-22-generic on top of 4.15.0-20-generic). 3) Verify that the generated module for the new kernel (4.15.0-22-generic in this example) is built and signed by verifying that the file in /lib/modules/$kernel/updates/dkms/$module.ko ends in ~Module signature appended~: $ hexdump -Cv /lib/modules/4.15.0-22-generic/updates/dkms/vboxdrv.ko | tail -n 100 [...] ~Module signature appended~ 4) Reboot 5) modprobe -v the module. It should not respond "Required key not available", and should return with no error. 6) Verify that dkms does not contain PKCS#7 errors. [Regression potential] Possible regressions involve failure to sign and/or be able to load modules after updates: failure to sign leading to a module being built but unsigned after a new kernel is installed or after a new DKMS module is installed, failure to load modules after reboot (usually caused by module being unsigned); failure to sign due to missing keys, signature key not being automatically slated for enrollment. All these potential regression scenarios present as failure to load a DKMS module after a reboot when it should be loaded successfully. --- At my last reboot, I was prompted to enable SecureBoot, so I did. When I booted, however, I noticed that the virtualbox service failed to start because it couldn't load its kernel module. If I attempt the same thing, I see that there's an issue with keys: $ sudo modprobe vboxdrv modprobe: ERROR: could not insert 'vboxdrv': Required key not available I do have keys enrolled; `mokutil --list-enrolled` produces http://paste.ubuntu.com/p/rntTQr5XJV/ To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/dkms/+bug/1772950/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp