Elkeid
Elkeid copied to clipboard
[Bug] elkeid-driver 在 6.12 内核上编译失败
Describe the bug 在更新到 debian 13 时遇到该问题
To Reproduce 将系统更新到 debian 13(实际上是使用了 6.12 内核)
Expected behavior 完成编译安装
Screenshots If applicable, add screenshots to help explain your problem.
OS information (please complete the following information):
- Distribution: Debian
- Version: 13
- Kernel info: 6.12.38+deb13-amd64
Hardware info (if you think it's helpful)
- CPU: None
- Motherboard: None
Additional context log here
Building module(s)
# command: make -j4 KERNELRELEASE=6.12.38+deb13-amd64 -C /lib/modules/6.12.38+deb13-amd64/build M=/var/lib/dkms/elkeid-driver/1.7.0.22/build
make: Entering directory '/usr/src/linux-headers-6.12.38+deb13-amd64'
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/init.o
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/trace.o
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/trace_buffer.o
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/smith_hook.o
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/anti_rootkit.o
CC [M] /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.o
/var/lib/dkms/elkeid-driver/1.7.0.22/build/src/anti_rootkit.c: In function ‘analyze_fops’:
/var/lib/dkms/elkeid-driver/1.7.0.22/build/src/anti_rootkit.c:224:39: error: ‘const struct file_operations’ has no member named ‘iterate’
224 | addr = (unsigned long)fp->f_op->iterate;
| ^~
make[2]: *** [/usr/src/linux-headers-6.12.38+deb13-common/scripts/Makefile.build:234: /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/anti_rootkit.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /usr/src/linux-headers-6.12.38+deb13-common/include/linux/printk.h:6,
from /usr/src/linux-headers-6.12.38+deb13-common/include/asm-generic/bug.h:22,
from /usr/src/linux-headers-6.12.38+deb13-common/arch/x86/include/asm/bug.h:100,
from /usr/src/linux-headers-6.12.38+deb13-common/include/linux/bug.h:5,
from /usr/src/linux-headers-6.12.38+deb13-common/include/linux/mmdebug.h:5,
from /usr/src/linux-headers-6.12.38+deb13-common/include/linux/mm.h:6,
from /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.c:8:
/var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.c: In function ‘filter_init’:
/usr/src/linux-headers-6.12.38+deb13-common/include/linux/init.h:180:22: error: passing argument 1 of ‘class_create’ from incompatible pointer type [-Wincompatible-pointer-types]
180 | #define THIS_MODULE (&__this_module)
| ~^~~~~~~~~~~~~~~
| |
| struct module *
/var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.c:537:33: note: in expansion of macro ‘THIS_MODULE’
537 | filter_class = class_create(THIS_MODULE, FILTER_CLASS_NAME);
| ^~~~~~~~~~~
In file included from /usr/src/linux-headers-6.12.38+deb13-common/include/linux/device.h:30,
from /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.c:10:
/usr/src/linux-headers-6.12.38+deb13-common/include/linux/device/class.h:228:54: note: expected ‘const char *’ but argument is of type ‘struct module *’
228 | struct class * __must_check class_create(const char *name);
| ~~~~~~~~~~~~^~~~
/var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.c:537:20: error: too many arguments to function ‘class_create’
537 | filter_class = class_create(THIS_MODULE, FILTER_CLASS_NAME);
| ^~~~~~~~~~~~
/usr/src/linux-headers-6.12.38+deb13-common/include/linux/device/class.h:228:29: note: declared here
228 | struct class * __must_check class_create(const char *name);
| ^~~~~~~~~~~~
make[2]: *** [/usr/src/linux-headers-6.12.38+deb13-common/scripts/Makefile.build:234: /var/lib/dkms/elkeid-driver/1.7.0.22/build/src/filter.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.12.38+deb13-common/Makefile:1970: /var/lib/dkms/elkeid-driver/1.7.0.22/build] Error 2
make: *** [/usr/src/linux-headers-6.12.38+deb13-common/Makefile:236: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.12.38+deb13-amd64'
# exit code: 2
# elapsed time: 00:00:05
----------------------------------------------------------------