Re: [PATCH next 2/3] fortify: Optimise strnlen()

David Laight
2026-04-03T08:23:34Z

On Wed, 1 Apr 2026 08:15:22 +0800
kernel test robot <lkp@intel.com> wrote:

> Hi,
>
> kernel test robot noticed the following build errors:
>
> [auto build test ERROR on next-20260327]
>
> url: https://github.com/intel-lab-lkp/linux/commits/david-laight-linux-gmail-com/fortify-replace-__compiletime_lessthan-with-statically_true/20260331-041123
> base: next-20260327
> patch link: https://lore.kernel.org/r/20260330132003.3379-3-david.laight.linux%40gmail.com
> patch subject: [PATCH next 2/3] fortify: Optimise strnlen()
> config: x86_64-buildonly-randconfig-001-20260331 (https://download.01.org/0day-ci/archive/20260401/202604010835.IWCsUV7z-lkp@intel.com/config)
> compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260401/202604010835.IWCsUV7z-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202604010835.IWCsUV7z-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> >> ld.lld: error: undefined symbol: __fortify_undefined
> >>> referenced by fortify-string.h:290 (include/linux/fortify-string.h:290)
> >>> vmlinux.o:(parse_early_param)
> >>> referenced by fortify-string.h:218 (include/linux/fortify-string.h:218)
> >>> vmlinux.o:(parse_early_param)
> >>> referenced by fortify-string.h:290 (include/linux/fortify-string.h:290)
> >>> vmlinux.o:(setup_boot_config)
> >>> referenced 2103 more times
>

I'm not sure how this can happen.
The references are all behind a __builtin_constant_p() check.
I haven't tested the actual config, but allmodconfig compiled for me
with clang 18.

David