[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1037425: linux-kbuild-6.1: please add Breaks against obsolete *-dkms packages



Package: linux-kbuild-6.1
Version: 6.1.27-1
Severity: serious
User: debian-qa@lists.debian.org
Usertags: piuparts

Hi,

one change in dkms in bookworm is that it actually returns an error when
failing to build a module, as a result
/etc/kernel/header_postinst.d/dkms may fail and cause
linux-headers-<MAJOR.MINOR.PATCH>-<ABI>-<FLAVOR>.postinst to fail.
(Up to bullseye, dkms returned 0 on failure and the failure was only
noticable when someone studied the install/upgrade log.)

As a consequence, if cruft *-dkms packages are still installed, but fail
to build the module for current kernels, this may result in upgrade
failures. Therefore please add Breaks against cruft *-dkms packages that
may be left over from previous releases to ensure they get removed.
I chose linux-kbuild-6.1 for the addition of these Breaks since all
linux-headers-* packages depend on that.

I'm trying to build a list:

Breaks:
# in bullseye, not in bookworm:
	nvidia-tesla-418-kernel-dkms (<< 418.226.00-9~),
	nvidia-tesla-460-kernel-dkms (<< 460.106.00-9~),
# in buster, not in bullseye
	sl-modem-dkms (<< 2.9.11~20110321-16.0),
# in stretch, not in buster
	blktap-dkms (<< 2.0.93-0.10.0),
# in jessie, not in stretch
	oss4-dkms (<< 4.2-build2020-1~),
# in wheezy, not in jessie
	blcr-dkms (<< 0.8.6~b3-1.0),

Maybe there are more, but I haven't seen them, yet.

In case this was fixed in sid (but not in bookworm), I've used that
version suffixed with '~', otherwise (i.e. not fixed in sid) I've
invented a version based on the last version in sid with NMU suffix .0


The typical upgrade failure if one of these obsolete packages is still
installed looks like this:

...
  Setting up linux-headers-6.1.0-9-amd64 (6.1.27-1) ...
  /etc/kernel/header_postinst.d/dkms:
  dkms: running auto installation service for kernel 6.1.0-9-amd64.
  Sign command: /usr/lib/linux-kbuild-6.1/scripts/sign-file
  Signing key: /var/lib/dkms/mok.key
  Public certificate (MOK): /var/lib/dkms/mok.pub
  Certificate or key are missing, generating self signed certificate for MOK...
  openssl not found, can't generate key and certificate.

  Building module:
  Cleaning build area...
  make -j84 KERNELRELEASE=6.1.0-9-amd64 -C /lib/modules/6.1.0-9-amd64/build M=/var/lib/dkms/blcr/0.8.5/build...(bad exit status: 2)
  Error! Bad return status for module build on kernel: 6.1.0-9-amd64 (x86_64)
  Consult /var/lib/dkms/blcr/0.8.5/build/make.log for more information.
  dkms autoinstall on 6.1.0-9-amd64/x86_64 failed for blcr(10)
  Error! One or more modules failed to install during autoinstall.
  Refer to previous errors for more information.
  dkms: autoinstall for kernel: 6.1.0-9-amd64 failed!
  run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 11
  Failed to process /etc/kernel/header_postinst.d at /var/lib/dpkg/info/linux-headers-6.1.0-9-amd64.postinst line 11.
  dpkg: error processing package linux-headers-6.1.0-9-amd64 (--configure):
   installed linux-headers-6.1.0-9-amd64 package post-installation script subprocess returned error exit status 1
  Setting up gnupg (2.2.40-1.1) ...
  dpkg: dependency problems prevent configuration of linux-headers-amd64:
   linux-headers-amd64 depends on linux-headers-6.1.0-9-amd64 (= 6.1.27-1); however:
    Package linux-headers-6.1.0-9-amd64 is not configured yet.

  dpkg: error processing package linux-headers-amd64 (--configure):
   dependency problems - leaving unconfigured
  Processing triggers for systemd (252.6-1.1~deb12anbe1) ...
  Processing triggers for debianutils (5.7-0.4) ...
  Processing triggers for libc-bin (2.36-9) ...
  Errors were encountered while processing:
   linux-headers-6.1.0-9-amd64
   linux-headers-amd64

while on bullseye the ignored failure looked like this:

...
  Setting up linux-headers-5.10.0-22-amd64 (5.10.178-3) ...
  /etc/kernel/header_postinst.d/dkms:
  Error! Bad return status for module build on kernel: 5.10.0-22-amd64 (x86_64)
  Consult /var/lib/dkms/blcr/0.8.5/build/make.log for more information.


Andreas


Reply to: