- 
                Notifications
    
You must be signed in to change notification settings  - Fork 76
 
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