• Bug#1106552: osmocom-dahdi-dkms: module fails to build for Linux 6.15:

    From Andreas Beckmann@21:1/5 to All on Mon May 26 00:00:01 2025
    Package: osmocom-dahdi-dkms
    Version: 0.0~git20241003.b2ea348-4
    Severity: important
    Tags: upstream sid forky
    Control: clone -1 -2
    Control: reassign -2 dahdi-dkms 1:3.1.0+git20230717~dfsg-10.1
    Control: retitle -2 dahdi-dkms: module fails to build for Linux 6.15: implicit declaration of function 'del_timer_sync'

    Hi,

    osmocom-dahdi-dkms (and probably dahdi-dkms as well) fails to build the module(s) for Linux 6.15 in experimental:

    DKMS (dkms-3.2.0) make.log for osmocom-dahdi/0.0~git20241003.b2ea348 for kernel 6.15-rc7-amd64 (x86_64)
    Sat May 24 21:53:28 UTC 2025

    Building module(s)
    # command: make -j14 KERNELRELEASE=6.15-rc7-amd64 -C /var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build KVERS=6.15-rc7-amd64
    make: Entering directory '/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build'
    make -C /lib/modules/6.15-rc7-amd64/build KBUILD_EXTMOD=/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/drivers/dahdi DAHDI_INCLUDE=/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/include DAHDI_MODULES_EXTRA=" " HOTPLUG_FIRMWARE=yes
    modules DAHDI_BUILD_ALL=m
    make[1]: Entering directory '/usr/src/linux-headers-6.15-rc7-amd64'
    make[2]: Entering directory '/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/drivers/dahdi'
    CC [M] dahdi-base.o
    CC [M] dahdi-sysfs.o
    CC [M] dahdi-sysfs-chan.o
    CC [M] dahdi-version.o
    CC [M] dahdi_dynamic.o
    CC [M] dahdi_dynamic_loc.o
    CC [M] dahdi_dynamic_eth.o
    CC [M] dahdi_dynamic_ethmf.o
    CC [M] dahdi_transcode.o
    CC [M] wcte13xp-base.o
    CC [M] wcxb_spi.o
    CC [M] wcxb.o
    CC [M] wcxb_flash.o
    CC [M] wcte43x-base.o
    dahdi_dynamic_ethmf.c: In function 'ztdethmf_destroy': dahdi_dynamic_ethmf.c:538:34: warning: the comparison will always evaluate as 'true' for the address of 'name' will never be NULL [-Waddress]
    538 | if (z && z->span && z->span->name) {
    | ^~
    In file included from dahdi_dynamic_ethmf.c:56: /var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/include/dahdi/kernel.h:963:14: note: 'name' declared here
    963 | char name[40]; /*!< Span name */
    | ^~~~
    dahdi_dynamic_ethmf.c: In function 'ztdethmf_exit': dahdi_dynamic_ethmf.c:778:9: error: implicit declaration of function 'del_timer_sync'; did you mean 'dev_mc_sync'? [-Wimplicit-function-declaration]
    778 | del_timer_sync(&timer);
    | ^~~~~~~~~~~~~~
    | dev_mc_sync
    make[4]: *** [/usr/src/linux-headers-6.15-rc7-common/scripts/Makefile.build:208: dahdi_dynamic_ethmf.o] Error 1
    make[4]: *** Waiting for unfinished jobs....
    wcte43x-base.c: In function 't43x_init_one':
    wcte43x-base.c:3517:13: warning: the comparison will always evaluate as 'true' for the address of 'xb' will never be NULL [-Waddress]
    3517 | if (&wc->xb)
    | ^
    wcte43x-base.c:141:21: note: 'xb' declared here
    141 | struct wcxb xb;
    | ^~
    dahdi-base.c: In function 'dahdi_seq_show':
    dahdi-base.c:955:13: warning: the comparison will always evaluate as 'true' for the address of 'name' will never be NULL [-Waddress]
    955 | if (s->name)
    | ^
    In file included from dahdi-base.c:68: /var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/include/dahdi/kernel.h:963:14: note: 'name' declared here
    963 | char name[40]; /*!< Span name */
    | ^~~~
    dahdi-base.c:957:13: warning: the comparison will always evaluate as 'true' for the address of 'desc' will never be NULL [-Waddress]
    957 | if (s->desc)
    | ^ /var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/include/dahdi/kernel.h:964:14: note: 'desc' declared here
    964 | char desc[80]; /*!< Span description */
    | ^~~~
    dahdi-base.c:996:21: warning: the comparison will always evaluate as 'true' for the address of 'name' will never be NULL [-Waddress]
    996 | if (chan->name)
    | ^~~~ /var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/include/dahdi/kernel.h:442:14: note: 'name' declared here
    442 | char name[40];
    | ^~~~
    dahdi_dynamic.c: In function 'dahdi_dynamic_cleanup':
    dahdi_dynamic.c:924:9: error: implicit declaration of function 'del_timer_sync'; did you mean 'dev_mc_sync'? [-Wimplicit-function-declaration]
    924 | del_timer_sync(&alarmcheck);
    | ^~~~~~~~~~~~~~
    | dev_mc_sync
    dahdi_dynamic.c:927:9: error: implicit declaration of function 'del_timer'; did you mean 'add_timer'? [-Wimplicit-function-declaration]
    927 | del_timer(&alarmcheck);
    | ^~~~~~~~~
    | add_timer
    wcte43x-base.c: In function 't43x_remove_one':
    wcte43x-base.c:3556:9: error: implicit declaration of function 'del_timer_sync'; did you mean 'dev_mc_sync'? [-Wimplicit-function-declaration]
    3556 | del_timer_sync(&wc->timer);
    | ^~~~~~~~~~~~~~
    | dev_mc_sync
    make[4]: *** [/usr/src/linux-headers-6.15-rc7-common/scripts/Makefile.build:208: dahdi_dynamic.o] Error 1
    make[4]: *** [/usr/src/linux-headers-6.15-rc7-common/scripts/Makefile.build:208: wcte43x-base.o] Error 1
    wcte13xp-base.c: In function 't13x_set_linemode':
    wcte13xp-base.c:1853:9: error: implicit declaration of function 'del_timer_sync'; did you mean 'dev_mc_sync'? [-Wimplicit-function-declaration]
    1853 | del_timer_sync(&wc->timer);
    | ^~~~~~~~~~~~~~
    | dev_mc_sync
    wcte13xp-base.c: In function 'te13xp_init_one':
    wcte13xp-base.c:2704:13: warning: the comparison will always evaluate as 'true' for the address of 'xb' will never be NULL [-Waddress]
    2704 | if (&wc->xb)
    | ^
    wcte13xp-base.c:111:21: note: 'xb' declared here
    111 | struct wcxb xb;
    | ^~
    make[4]: *** [/usr/src/linux-headers-6.15-rc7-common/scripts/Makefile.build:208: wcte13xp-base.o] Error 1
    dahdi-base.c: In function 'coretimer_cleanup':
    dahdi-base.c:10189:9: error: implicit declaration of function 'del_timer_sync'; did you mean 'dev_mc_sync'? [-Wimplicit-function-declaration]
    10189 | del_timer_sync(&core_timer.timer);
    | ^~~~~~~~~~~~~~
    | dev_mc_sync
    make[4]: *** [/usr/src/linux-headers-6.15-rc7-common/scripts/Makefile.build:208: dahdi-base.o] Error 1
    make[3]: *** [/usr/src/linux-headers-6.15-rc7-common/Makefile:2027: .] Error 2 make[2]: *** [/usr/src/linux-headers-6.15-rc7-common/Makefile:260: __sub-make] Error 2
    make[2]: Leaving directory '/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build/drivers/dahdi'
    make[1]: *** [/usr/src/linux-headers-6.15-rc7-common/Makefile:260: __sub-make] Error 2
    make[1]: Leaving directory '/usr/src/linux-headers-6.15-rc7-amd64'
    make: *** [Makefile:74: modules] Error 2
    make: Leaving directory '/var/lib/dkms/osmocom-dahdi/0.0~git20241003.b2ea348/build'

    # exit code: 2
    # elapsed time: 00:00:06 ----------------------------------------------------------------


    del_timer_sync() has been renamed to timer_delete_sync() in v6.2-rc1
    "timers: Rename del_timer_sync() to timer_delete_sync()" https://github.com/torvalds/linux/commit/9b13df3fb64ee95e2397585404e442afee2c7d4f

    the backwards compatibility support wrappers have been removed in
    v6.15-rc1 "treewide: Switch/rename to timer_delete[_sync]()" https://github.com/torvalds/linux/commit/8fa7292fee5c5240402371ea89ab285ec856c916


    Andreas

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)