Source: lttng-modules Version: 2.13.13-1 Severity: important Tags: patch Hi,
the sed magic in dkms.conf expects kernel versions starting with three numeric components like 6.8.12-amd64. It fails if there are only two like in 6.8-rc1 or 6.9-amd64 (this naming style is usually found in experimental). If parsing fails, this causes lots of noise consisting of repeated /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 101: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 101: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 124: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 124: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 158: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 313: [: : integer expression expected /var/lib/dkms/lttng-modules/2.13.13/source/dkms.conf: line 313: [: : integer expression expected and probably skips building some modules since version constraints cannot be checked. A patch with improved sed expressions is attached. Andreas
>From 028d89325911f9dd070943b097b81723a1c91a40 Mon Sep 17 00:00:00 2001 From: Andreas Beckmann <a...@debian.org> Date: Tue, 12 Mar 2024 11:03:52 +0100 Subject: [PATCH] fix kernel version parsing if there are only two numeric components e.g. 6.7-rc1 --- debian/lttng-modules-dkms.dkms | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/debian/lttng-modules-dkms.dkms b/debian/lttng-modules-dkms.dkms index b56fba6..25c568f 100644 --- a/debian/lttng-modules-dkms.dkms +++ b/debian/lttng-modules-dkms.dkms @@ -13,9 +13,9 @@ elif [ -f /boot/config-$kernelver ]; then KCONFIG=true fi -VERSION=$(echo $kernelver | sed -ne 's/\([0-9]\+\)\.\([0-9]\+\)\.\([0-9]\+\)\-\(.\+\)/\1/p') -PATCHLEVEL=$(echo $kernelver | sed -ne 's/\([0-9]\+\)\.\([0-9]\+\)\.\([0-9]\+\)\-\(.\+\)/\2/p') -SUBLEVEL=$(echo $kernelver | sed -ne 's/\([0-9]\+\)\.\([0-9]\+\)\.\([0-9]\+\)\-\(.\+\)/\3/p') +VERSION=$(echo $kernelver | sed -e 's/\([0-9]\+\)[.]\([0-9]\+\)\(.*\)/\1/') +PATCHLEVEL=$(echo $kernelver | sed -e 's/\([0-9]\+\)[.]\([0-9]\+\)\(.*\)/\2/') +SUBLEVEL=$(echo $kernelver | sed -e 's/\([0-9]\+\)[.]\([0-9]\+\)[.]\([0-9]\+\)\(.*\)/\3/; s/\([0-9]*\)[.]\([0-9]*\)\(.*\)/0/') MAKE[$i]="make -C $kernel_source_dir M=$dkms_tree/$PACKAGE_NAME/$PACKAGE_VERSION/build modules CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m" -- 2.20.1