Since architectures can implement ftrace using a variety of mechanisms, generic code should always use CC_FLAGS_FTRACE rather than assuming that ftrace is built using -pg.
Since commit: 2464a609ded09420 ("ftrace: do not trace library functions") ... lib/Makefile has removed CC_FLAGS_FTRACE from KBUILD_CFLAGS, so ftrace is disabled for all files under lib/. Given that, we shouldn't explicitly remove -pg when building lib/string.o, as this is redundant and bad form. This patch cleans things up accordingly. There should be no functional change as a result of this patch. Signed-off-by: Mark Rutland <mark.rutl...@arm.com> Cc: Andrew Morton <a...@linux-foundation.org> Cc: Borislav Petkov <b...@alien8.de> Cc: Gary R Hook <gary.h...@amd.com> Cc: Ingo Molnar <mi...@kernel.org> --- lib/Makefile | 4 ---- 1 file changed, 4 deletions(-) I've verified this atop of v5.3-rc3, where the Makefile removes all of CC_FLAGS_FTRACE (containing "-pg -mrecord-mcount -mfentry") from the CFLAGS for building string.o Mark. diff --git a/lib/Makefile b/lib/Makefile index 29c02a924973..c5892807e06f 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -21,10 +21,6 @@ KCOV_INSTRUMENT_dynamic_debug.o := n ifdef CONFIG_AMD_MEM_ENCRYPT KASAN_SANITIZE_string.o := n -ifdef CONFIG_FUNCTION_TRACER -CFLAGS_REMOVE_string.o = -pg -endif - CFLAGS_string.o := $(call cc-option, -fno-stack-protector) endif -- 2.11.0