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 
/usr/src/linux-headers-6.3.0-1-common/include/linux/container_of.h:5,
                    from 
/usr/src/linux-headers-6.3.0-1-common/include/linux/list.h:5,
                    from 
/usr/src/linux-headers-6.3.0-1-common/include/linux/kobject.h:19,
                    from 
/usr/src/linux-headers-6.3.0-1-common/include/linux/cdev.h:5,
                    from /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:16:
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c: In function 
‘ddcci_register_driver’:
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1107:46: error: ‘struct 
bus_type’ has no member named ‘p’; did you mean ‘pm’?
    1107 |         if (unlikely(WARN_ON(!ddcci_bus_type.p)))
         |                                              ^
   /usr/src/linux-headers-6.3.0-1-common/include/linux/compiler.h:78:45: note: 
in definition of macro ‘unlikely’
      78 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1107:22: note: in expansion of 
macro ‘WARN_ON’
    1107 |         if (unlikely(WARN_ON(!ddcci_bus_type.p)))
         |                      ^~~~~~~
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c: At top level:
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1819:27: error: initialization 
of ‘int (*)(struct i2c_client *)’ from incompatible pointer type ‘int 
(*)(struct i2c_client *, const struct i2c_device_id *)’ 
[-Werror=incompatible-pointer-types]
    1819 |         .probe          = ddcci_probe,
         |                           ^~~~~~~~~~~
   /var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.c:1819:27: note: (near 
initialization for ‘ddcci_driver.<anonymous>.probe’)
   cc1: some warnings being treated as errors
   make[3]: *** 
[/usr/src/linux-headers-6.3.0-1-common/scripts/Makefile.build:257: 
/var/lib/dkms/ddcci/0.4.2/build/ddcci/ddcci.o] Error 1
   make[2]: *** [/usr/src/linux-headers-6.3.0-1-common/Makefile:2050: 
/var/lib/dkms/ddcci/0.4.2/build/ddcci] Error 2
   make[2]: Leaving directory '/usr/src/linux-headers-6.3.0-1-amd64'
   make[1]: *** [Makefile:38: ddcci.ko] Error 2
   make[1]: Leaving directory '/var/lib/dkms/ddcci/0.4.2/build/ddcci'
   make: *** [Makefile:28: ddcci] Error 2
   make: Leaving directory '/var/lib/dkms/ddcci/0.4.2/build'

-- System Information:
Debian Release: 12.0
  APT prefers testing-debug
  APT policy: (900, 'testing-debug'), (900, 'testing'), (800, 
'unstable-debug'), (800, 'unstable'), (790, 'buildd-unstable'), (700, 
'experimental-debug'), (700, 'experimental'), (690, 'buildd-experimental')
merged-usr: no
Architecture: amd64 (x86_64)

Kernel: Linux 6.3.0-1-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8), LANGUAGE=en_AU:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages ddcci-dkms depends on:
ii  dkms  3.0.10-8

ddcci-dkms recommends no packages.

ddcci-dkms suggests no packages.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to