[Letux-kernel] LetuxOS: Kernel: m-rc 6.17-rc4 success [iMac.local]

H. Nikolaus Schaller hns at goldelico.com
Sat Sep 20 10:49:41 CEST 2025


Hi,

> Am 19.09.2025 um 16:48 schrieb Andreas Kemnade <andreas at kemnade.info>:
> 
> On Tue,  2 Sep 2025 06:26:26 +0200 (CEST)
> kernel-build-bot at letux.org wrote:
> 
>> ==============
>> letux-6.17-rc4 Mon Sep  1 08:05:46 CEST 2025:
>> * AESS: rework of memory and power management so that we can modprobe -r and modprobe without inducing kernel panics (by hns at goldelico.com)
>> * introduction of an initial riscv letux_defconfig (by hns at goldelico.com)
>> 
> This does not compile 
> #
> # configuration written to .config
> #
>  SYNC    include/config/auto.conf
>  UPD     include/config/kernel.release
>  UPD     include/generated/utsrelease.h
>  HOSTCC  scripts/mod/modpost.o
> scripts/mod/modpost.c:32:14: error: static declaration of 'strchrnul' follows non-static declaration
>   32 | static char *strchrnul(const char *s, int c)
>      |              ^
> /usr/include/string.h:286:14: note: previous declaration is here
>  286 | extern char *strchrnul (const char *__s, int __c)
>      |              ^
> 1 error generated.
> make[3]: *** [scripts/Makefile.host:131: scripts/mod/modpost.o] Error 1
> 
> 
> Who needs that? My darwin build host does not need it.

The patch apparently was an answer to 754f8733fc09dd where I got using gcc13 from MacPorts:

  HOSTCC  scripts/mod/modpost.o - due to target missing
scripts/mod/modpost.c: In function 'verify_module_namespace':
scripts/mod/modpost.c:1723:23: warning: implicit declaration of function 'strchrnul'; did you mean 'strchr'? [-Wimplicit-function-declaration]
 1723 |                 sep = strchrnul(namespace, ',');
      |                       ^~~~~~~~~
      |                       strchr

Even if "man strchrnul" tells that it is available. So it may be missing in the gcc13 libraries.

Nevertheless, it would be better to rely on the lowest common denominator (POSIX) for HOSTCC tools...

> Rather add a
> #define strchrnul strchrnul_ours
> or something like that before your static declaration, so it
> does not clash with the system declaration if available.

Good idea. Will add to next release.

BR,
Nikolaus

PS: I am currently reworking the AESS driver so that it can be compiled as module
and be used even if abe-twl6040 is compiled into the kernel. Current code will complain
that abe-twl6040.o can't statically bind to some symbols exported from aess.ko at runtime...


More information about the Letux-kernel mailing list