Skip to content

[Bug] elkeid-driver 在 6.12 内核上编译失败 #733

@SherkeyXD

Description

@SherkeyXD

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
----------------------------------------------------------------

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions