Processed (with 1 error): Re: Bug#1037974: ddcci-dkms: code fails to build and package fails to install with Linux 6.3 headers

2023-06-16 Thread Debian Bug Tracking System
Processing control commands:

> clone -1 -2
Bug #1037974 {Done: Stephen Kitt } [ddcci-dkms] ddcci-dkms: 
code fails to build and package fails to install with Linux 6.3 headers
Bug 1037974 cloned as bug 1038156
> reassign -2 src:dkms
Bug #1038156 {Done: Stephen Kitt } [ddcci-dkms] ddcci-dkms: 
code fails to build and package fails to install with Linux 6.3 headers
Bug reassigned from package 'ddcci-dkms' to 'src:dkms'.
No longer marked as found in versions ddcci-driver-linux/0.4.2-4 and 
ddcci-driver-linux/0.4.3-1.
No longer marked as fixed in versions ddcci-driver-linux/0.4.3-2.
> severity -2 wishlist
Bug #1038156 {Done: Stephen Kitt } [src:dkms] ddcci-dkms: 
code fails to build and package fails to install with Linux 6.3 headers
Severity set to 'wishlist' from 'serious'
> retite -2 dkms: add directive to ignore module build failures
Unknown command or malformed arguments to command.


-- 
1037974: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1037974
1038156: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1038156
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#1037974: ddcci-dkms: code fails to build and package fails to install with Linux 6.3 headers

2023-06-16 Thread Andreas Beckmann

Control: clone -1 -2
Control: reassign -2 src:dkms
Control: severity -2 wishlist
Control: retite -2 dkms: add directive to ignore module build failures

On 15/06/2023 22.27, Stephen Kitt wrote:

  * The package should not fail to install when the module build fails.
    This might be a problem in dkms itself, or in ddcci's integration.


First of all, I find it a great improvement in dkms that it signals 
failure to build a module by exiting with an error (instead of returning 
0 after printing "module failed to build" which easily gets lost in the 
upgrade log.) Of course this causes previously unseen failures during 
the upgrade phase. (Instead of missing root file system or accelerated 
graphics after a reboot in case of a "required" module.) Maybe annoying 
in case of "optional" modules.


From a QA perspective I definitively want to see these as failures.


This is the more interesting issue, but see #1029063. Admittedly the absence
of a ddcci module is unlikely to ever prevent a system from booting, so
perhaps we could have a way of telling dkms that build failures in a given
module shouldn’t be treated as errors. Andreas, what do you think?


That's an interesting idea. Yes, that sounds like a useful feature. I'm 
not sure if it should be enabled by default in dkms.conf of the module 
or the local admin should rather create /etc/dkms/$module.conf with an 
override directive in there.

How should we call such a directive?
Maybe BUILD_FAILURE_IS_FATAL, default: yes.
With my QA hat on, I want a global override for that: 
BUILD_FAILURE_IS_ALWAYS_FATAL, default no.


Next question: do we want to ignore such a build failure only for 
unknown kernels (newer than the last successfully tested version) or 
always? Sometimes backporting fixes to a stable kernel breaks modules 
(see e.g. lttng-modules-dkms in (old-)old-stable).


Does anyone want to open an issue at the dkms github project, s.t. more 
people can throw in their ideas?

(We'll probably test that in Debian first before upstreaming a solution.)


Andreas



Bug#1037974: ddcci-dkms: code fails to build and package fails to install with Linux 6.3 headers

2023-06-15 Thread Stephen Kitt
Hi Paul,

On Thu, 15 Jun 2023 10:32:56 +0800, Paul Wise  wrote:
> When I try to install ddcci-dkms with the Linux 6.3 headers installed,
> the build of the code fails and then the install of the package fails.
> 
> I think there are two problems here:
> 
>  * The code needs to be adapted to the latest Linux kernel version.

I’ve applied candidate patches from the upstream repo to handle up to 6.4.

>  * The package should not fail to install when the module build fails.
>    This might be a problem in dkms itself, or in ddcci's integration.

This is the more interesting issue, but see #1029063. Admittedly the absence
of a ddcci module is unlikely to ever prevent a system from booting, so
perhaps we could have a way of telling dkms that build failures in a given
module shouldn’t be treated as errors. Andreas, what do you think?

Regards,

Stephen


pgpdvmAJgP37_.pgp
Description: OpenPGP digital signature


Bug#1037974: ddcci-dkms: code fails to build and package fails to install with Linux 6.3 headers

2023-06-15 Thread Tomas Jura

Hi

I successfully applied patch from 
https://aur.archlinux.org/packages/ddcci-driver-linux-dkms and compiled 
without error.


Tomas



Bug#1037974: ddcci-dkms: code fails to build and package fails to install with Linux 6.3 headers

2023-06-14 Thread Paul Wise
Package: ddcci-dkms
Version: 0.4.2-4
Severity: serious

When I try to install ddcci-dkms with the Linux 6.3 headers installed,
the build of the code fails and then the install of the package fails.

I think there are two problems here:

 * The code needs to be adapted to the latest Linux kernel version.
 * The package should not fail to install when the module build fails.
   This might be a problem in dkms itself, or in ddcci's integration.

I note that the combination of these issues also will break
installation of Linux 6.3 when ddcci-dkms is installed.

   $ sudo apt install ddcci-dkms 
   Reading package lists... Done
   Building dependency tree... Done
   Reading state information... Done
   The following NEW packages will be installed:
 ddcci-dkms
   0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
   Need to get 21.7 kB of archives.
   After this operation, 95.2 kB of additional disk space will be used.
   Get:1 https://deb.debian.org/debian testing/main amd64 ddcci-dkms all 
0.4.2-4 [21.7 kB]
   Fetched 21.7 kB in 1s (17.0 kB/s) 
   Retrieving bug reports... Done
   Parsing Found/Fixed information... Done
   Selecting previously unselected package ddcci-dkms.
   (Reading database ... 730615 files and directories currently installed.)
   Preparing to unpack .../ddcci-dkms_0.4.2-4_all.deb ...
   Unpacking ddcci-dkms (0.4.2-4) ...
   Setting up ddcci-dkms (0.4.2-4) ...
   Loading new ddcci-0.4.2 DKMS files...
   Building for 6.3.0-1-amd64
   Building initial module for 6.3.0-1-amd64
   Error! Bad return status for module build on kernel: 6.3.0-1-amd64 (x86_64)
   Consult /var/lib/dkms/ddcci/0.4.2/build/make.log for more information.
   dpkg: error processing package ddcci-dkms (--configure):
    installed ddcci-dkms package post-installation script subprocess returned 
error exit status 10
   Errors were encountered while processing:
    ddcci-dkms
   E: Sub-process /usr/bin/dpkg returned an error code (1)
   
   $ cat /var/lib/dkms/ddcci/0.4.2/build/make.log
   DKMS make.log for ddcci-0.4.2 for kernel 6.3.0-1-amd64 (x86_64)
   Thu 15 Jun 2023 10:23:01 AWST
   make: Entering directory '/var/lib/dkms/ddcci/0.4.2/build'
   make -C "ddcci"
   make[1]: Entering directory '/var/lib/dkms/ddcci/0.4.2/build/ddcci'
   make -C "/lib/modules/6.3.0-1-amd64/build" 
M="/var/lib/dkms/ddcci/0.4.2/build/ddcci" modules
   make[2]: Entering directory '/usr/src/linux-headers-6.3.0-1-amd64'
 CC [M]  /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.o
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1053:27: error: initialization 
of ‘int (*)(const struct device *, struct kobj_uevent_env *)’ from incompatible 
pointer type ‘int (*)(struct device *, struct kobj_uevent_env *)’ 
[-Werror=incompatible-pointer-types]
    1053 | .uevent = ddcci_device_uevent,
 |   ^~~
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1053:27: note: (near 
initialization for ‘ddcci_device_type.uevent’)
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1056:27: error: initialization 
of ‘char * (*)(const struct device *, umode_t *, kuid_t *, kgid_t *)’ {aka 
‘char * (*)(const struct device *, short unsigned int *, kuid_t *, kgid_t *)’} 
from incompatible pointer type ‘char * (*)(struct device *, umode_t *, kuid_t 
*, kgid_t *)’ {aka ‘char * (*)(struct device *, short unsigned int *, kuid_t *, 
kgid_t *)’} [-Werror=incompatible-pointer-types]
    1056 | .devnode    = ddcci_devnode
 |   ^
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1056:27: note: (near 
initialization for ‘ddcci_device_type.devnode’)
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1062:27: error: initialization 
of ‘int (*)(const struct device *, struct kobj_uevent_env *)’ from incompatible 
pointer type ‘int (*)(struct device *, struct kobj_uevent_env *)’ 
[-Werror=incompatible-pointer-types]
    1062 | .uevent = ddcci_device_uevent,
 |   ^~~
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1062:27: note: (near 
initialization for ‘ddcci_dependent_type.uevent’)
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1065:27: error: initialization 
of ‘char * (*)(const struct device *, umode_t *, kuid_t *, kgid_t *)’ {aka 
‘char * (*)(const struct device *, short unsigned int *, kuid_t *, kgid_t *)’} 
from incompatible pointer type ‘char * (*)(struct device *, umode_t *, kuid_t 
*, kgid_t *)’ {aka ‘char * (*)(struct device *, short unsigned int *, kuid_t *, 
kgid_t *)’} [-Werror=incompatible-pointer-types]
    1065 | .devnode    = ddcci_dependent_devnode
 |   ^~~
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1065:27: note: (near 
initialization for ‘ddcci_dependent_type.devnode’)
   In file included from 
/usr/src/linux-headers-6.3.0-1-common/include/linux/build_bug.h:5,
    from