Package: dahdi-dkms Version: 1:3.1.0+git20230717~dfsg-7 Followup-For: Bug #1081372
Hi, it seems to me that this is caused by a kernel interface change, see https://github.com/torvalds/linux/commit/d69d804845985c29ab5be5a4b3b1f4787893daf8 It works for me with the following patch. -- System Information: Debian Release: trixie/sid APT prefers stable-updates APT policy: (990, 'stable-updates'), (990, 'stable-security'), (990, 'testing'), (990, 'stable'), (500, 'stable-debug') Architecture: amd64 (x86_64) Foreign Architectures: i386, armhf Kernel: Linux 6.11.9-amd64 (SMP w/4 CPU threads; PREEMPT) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=nl_BE.UTF-8, LC_CTYPE=nl_BE.UTF-8 (charmap=UTF-8), LANGUAGE=nl_BE:nl Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages dahdi-dkms depends on: ii dkms 3.0.13-1 ii dpkg-dev 1.22.11 ii gawk 1:5.2.1-2+b1 ii gcc 4:14.2.0-1 ii libc6-dev 2.40-3 ii make 4.3-4.1 Versions of packages dahdi-dkms recommends: pn dahdi-linux <none> dahdi-dkms suggests no packages. -- no debconf information -- Benedikt Wildenhain (er), M.Sc., Wiss. MA - Hardwarenahe IT-Systeme Hochschule Bochum - Bochum University of Applied Sciences Campus Velbert/Heiligenhaus - https://www.hs-bochum.de/cvh/ Kettwiger Str. 20, Heiligenhaus, Raum 2-37, Tel +49 2056 5848-16744
--- dahdi-linux-3.1.0+git20230717~dfsg.orig/drivers/dahdi/dahdi-sysfs-chan.c
+++ dahdi-linux-3.1.0+git20230717~dfsg/drivers/dahdi/dahdi-sysfs-chan.c
@@ -220,7 +220,7 @@
chan_dbg(DEVICES, chan, "SYSFS\n");
}
-static int chan_match(struct device *dev, struct device_driver *driver)
+static int chan_match(struct device *dev, DEVICE_DRIVER_CONST struct device_driver *driver)
{
struct dahdi_chan *chan;
--- dahdi-linux-3.1.0+git20230717~dfsg.orig/drivers/dahdi/dahdi-sysfs.c
+++ dahdi-linux-3.1.0+git20230717~dfsg/drivers/dahdi/dahdi-sysfs.c
@@ -42,7 +42,7 @@
MODULE_PARM_DESC(tools_rootdir,
"root directory of all tools paths (default /)");
-static int span_match(struct device *dev, struct device_driver *driver)
+static int span_match(struct device *dev, DEVICE_DRIVER_CONST struct device_driver *driver)
{
return 1;
}
--- dahdi-linux-3.1.0+git20230717~dfsg.orig/drivers/dahdi/xpp/xbus-sysfs.c
+++ dahdi-linux-3.1.0+git20230717~dfsg/drivers/dahdi/xpp/xbus-sysfs.c
@@ -400,7 +400,7 @@
ATTRIBUTE_GROUPS(xbus_dev);
#endif
-static int astribank_match(struct device *dev, struct device_driver *driver)
+static int astribank_match(struct device *dev, DEVICE_DRIVER_CONST struct device_driver *driver)
{
DBG(DEVICES, "SYSFS MATCH: dev->bus_id = %s, driver->name = %s\n",
dev_name(dev), driver->name);
@@ -764,7 +764,7 @@
return len;
}
-static int xpd_match(struct device *dev, struct device_driver *driver)
+static int xpd_match(struct device *dev, DEVICE_DRIVER_CONST struct device_driver *driver)
{
struct xpd_driver *xpd_driver;
xpd_t *xpd;
--- dahdi-linux-3.1.0+git20230717~dfsg.orig/include/dahdi/kernel.h
+++ dahdi-linux-3.1.0+git20230717~dfsg/include/dahdi/kernel.h
@@ -1680,4 +1680,13 @@
#define UEVENT_CONST
#endif
+/* work-around kernel API change from "struct device_driver *_drv" to
+ * "const struct device_driver *_drv"
+ * as implemented in d69d804845985c29ab5be5a4b3b1f4787893daf8 */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 11, 0)
+#define DEVICE_DRIVER_CONST const
+#else
+#define DEVICE_DRIVER_CONST
+#endif
+
#endif /* _DAHDI_KERNEL_H */
signature.asc
Description: PGP signature
