Messages in this thread | | | Date | Thu, 3 Feb 2022 09:15:51 -0800 | From | Kees Cook <> | Subject | Re: [PATCH] lib/test_string.c: Add test for strlen() |
| |
On Thu, Feb 03, 2022 at 09:04:22AM +0100, Geert Uytterhoeven wrote: > Not if -ffreestanding, which is what several architectures are > using nowadays, to a.o. prevent gcc from replacing calls to stdlib > functions to other stdlib functions (e.g. strncat() -> strlen() + > store, strncmp() -> strcmp()), which breaks linking if the latter is > only provided inline.
Hah, for i386:
arch/x86/Makefile # temporary until string.h is fixed KBUILD_CFLAGS += -ffreestanding
This "temporary" is from 2006. ;)
6edfba1b33c7 ("[PATCH] x86_64: Don't define string functions to builtin")
Removing that appears to solve it, and appears to build correctly. I'll continue testing.
> It works after dropping -ffreestanding.
I wonder if the other architectures were just copying x86?
-- Kees Cook
| |