-
Notifications
You must be signed in to change notification settings - Fork 77
Open
Description
Problem Description
The module (version 0.0.20) does not compile on Kernel 6.16.x
Model and Debug Info
Installation type: via github, used dkms
Distribution: Kali Linux 2025.3 (rolling release)
Model name: Legion 5 15ARH7H
Contents of /var/lib/dkms/LenovoLegionLinux/1.0.0/build/make.log:
DKMS (dkms-3.2.2) make.log for LenovoLegionLinux/1.0.0 for kernel 6.16.8+kali-amd64 (x86_64)
Mon Oct 6 08:40:54 PM CEST 2025
Building module(s)
# command: make -j16 KERNELRELEASE=6.16.8+kali-amd64 KERNELVERSION=6.16.8+kali-amd64
make -C /lib/modules/6.16.8+kali-amd64/build M=/var/lib/dkms/LenovoLegionLinux/1.0.0/build modules
make[1]: Entering directory '/usr/src/linux-headers-6.16.8+kali-amd64'
make[2]: Entering directory '/var/lib/dkms/LenovoLegionLinux/1.0.0/build'
CC [M] legion-laptop.o
legion-laptop.c:2321:41: error: field ‘platform_profile_handler’ has incomplete type
2321 | struct platform_profile_handler platform_profile_handler;
| ^~~~~~~~~~~~~~~~~~~~~~~~
legion-laptop.c: In function ‘legion_platform_profile_notify’:
legion-laptop.c:4781:9: error: too few arguments to function ‘platform_profile_notify’
4781 | platform_profile_notify();
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from legion-laptop.c:74:
/usr/src/linux-headers-6.16.8+kali-common/include/linux/platform_profile.h:58:6: note: declared here
58 | void platform_profile_notify(struct device *dev);
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/linux-headers-6.16.8+kali-common/include/linux/bits.h:32,
from /usr/src/linux-headers-6.16.8+kali-common/include/linux/ioport.h:13,
from /usr/src/linux-headers-6.16.8+kali-common/include/linux/acpi.h:12,
from legion-laptop.c:62:
legion-laptop.c: In function ‘legion_platform_profile_get’:
/usr/src/linux-headers-6.16.8+kali-common/include/linux/compiler_types.h:503:27: error: expression in static assertion is not an integer
503 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/build_bug.h:78:56: note: in definition of macro ‘__static_assert’
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/container_of.h:20:9: note: in expansion of macro ‘static_assert’
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/container_of.h:20:23: note: in expansion of macro ‘__same_type’
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
legion-laptop.c:4790:16: note: in expansion of macro ‘container_of’
4790 | priv = container_of(pprof, struct legion_private,
| ^~~~~~~~~~~~
legion-laptop.c: In function ‘legion_platform_profile_set’:
/usr/src/linux-headers-6.16.8+kali-common/include/linux/compiler_types.h:503:27: error: expression in static assertion is not an integer
503 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/build_bug.h:78:56: note: in definition of macro ‘__static_assert’
78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
| ^~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/container_of.h:20:9: note: in expansion of macro ‘static_assert’
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/container_of.h:20:23: note: in expansion of macro ‘__same_type’
20 | static_assert(__same_type(*(ptr), ((type *)0)->member) || \
| ^~~~~~~~~~~
legion-laptop.c:4819:16: note: in expansion of macro ‘container_of’
4819 | priv = container_of(pprof, struct legion_private,
| ^~~~~~~~~~~~
legion-laptop.c: In function ‘legion_platform_profile_init’:
legion-laptop.c:4867:15: error: too few arguments to function ‘platform_profile_register’
4867 | err = platform_profile_register(&priv->platform_profile_handler);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/platform_profile.h:50:16: note: declared here
50 | struct device *platform_profile_register(struct device *dev, const char *name,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
legion-laptop.c: In function ‘legion_platform_profile_exit’:
legion-laptop.c:4881:9: error: too few arguments to function ‘platform_profile_remove’
4881 | platform_profile_remove();
| ^~~~~~~~~~~~~~~~~~~~~~~
/usr/src/linux-headers-6.16.8+kali-common/include/linux/platform_profile.h:53:6: note: declared here
53 | void platform_profile_remove(struct device *dev);
| ^~~~~~~~~~~~~~~~~~~~~~~
legion-laptop.c: At top level:
legion-laptop.c:6146:10: error: ‘struct platform_driver’ has no member named ‘remove_new’; did you mean ‘remove’?
6146 | .remove_new = legion_remove,
| ^~~~~~~~~~
| remove
legion-laptop.c:1816:16: warning: ‘ecram_memoryio_write’ defined but not used [-Wunused-function]
1816 | static ssize_t ecram_memoryio_write(const struct ecram_memoryio *ec_memoryio,
| ^~~~~~~~~~~~~~~~~~~~
make[4]: *** [/usr/src/linux-headers-6.16.8+kali-common/scripts/Makefile.build:292: legion-laptop.o] Error 1
make[3]: *** [/usr/src/linux-headers-6.16.8+kali-common/Makefile:2027: .] Error 2
make[2]: *** [/usr/src/linux-headers-6.16.8+kali-common/Makefile:260: __sub-make] Error 2
make[2]: Leaving directory '/var/lib/dkms/LenovoLegionLinux/1.0.0/build'
make[1]: *** [/usr/src/linux-headers-6.16.8+kali-common/Makefile:260: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.16.8+kali-amd64'
make: *** [Makefile:13: all] Error 2
# exit code: 2
# elapsed time: 00:00:01
Please advise.
Metadata
Metadata
Assignees
Labels
No labels