create_class changed for linux-6.4.0. The change is already in master as this commit: https://github.com/tuxedocomputers/tuxedo-keyboard/commit/04112f65ec4099d43bca8c00acc61f3a2c0e185f, but no release is out yet. Just supplied a patch from the fixing commit to stuff in /etc/portage/patches/app-laptop/tuxedo-keyboard until a release is out Reproducible: Always Steps to Reproduce: 1.emerge -1 tuxedo-keyboard 2. 3. Actual Results: ... In file included from ./include/linux/linkage.h:7, from ./include/linux/kernel.h:17, from /var/tmp/portage/app-laptop/tuxedo-keyboard-3.2.6/work/tuxedo-keyboard-3.2.6/./src/tuxedo_io/tuxedo_io.c:20: /var/tmp/portage/app-laptop/tuxedo-keyboard-3.2.6/work/tuxedo-keyboard-3.2.6/./src/tuxedo_io/tuxedo_io.c: In function ‘tuxedo_io_init’: ./include/linux/export.h:27:22: error: passing argument 1 of ‘class_create’ from incompatible pointer type [-Werror=incompatible-pointer-types] 27 | #define THIS_MODULE (&__this_module) | ~^~~~~~~~~~~~~~~ | | Expected Results: It should install just fine
Created attachment 864689 [details, diff] 0001-tuxedo_io-Adjust-class_create-call-for-kernel-6.4-co.patch
this fix is included in upstream version version 3.2.7
I manually bumped to version 3.2.8 and removed the patch that was in 3.2.3 since that also seems to be fixed. After that it built fine.
3.2.10 is in the tree now, so this should be fixed. Thanks for reporting!