Re: [PATCH v2 2/2] kbuild: trace functions in subdirectories of lib/

From: Petr Mladek
Date: Wed Jul 08 2020 - 02:52:29 EST


On Tue 2020-07-07 18:21:17, Masahiro Yamada wrote:
> ccflags-remove-$(CONFIG_FUNCTION_TRACER) += $(CC_FLAGS_FTRACE)
>
> exists here in sub-directories of lib/ to keep the behavior of
> commit 2464a609ded0 ("ftrace: do not trace library functions").
>
> Since that commit, not only the objects in lib/ but also the ones in
> the sub-directories are excluded from ftrace (although the commit
> description did not explicitly mention this).
>
> However, most of library functions in sub-directories are not so hot.
> Re-add them to ftrace.
>
> Going forward, only the objects right under lib/ will be excluded.

> diff --git a/lib/livepatch/Makefile b/lib/livepatch/Makefile
> index 9abdf615b088..295b94bff370 100644
> --- a/lib/livepatch/Makefile
> +++ b/lib/livepatch/Makefile
> @@ -2,8 +2,6 @@
> #
> # Makefile for livepatch test code.
>
> -ccflags-remove-$(CONFIG_FUNCTION_TRACER) += $(CC_FLAGS_FTRACE)
> -
> obj-$(CONFIG_TEST_LIVEPATCH) += test_klp_atomic_replace.o \
> test_klp_callbacks_demo.o \
> test_klp_callbacks_demo2.o \

With this change it might be possible to remove also the last few
lines that explicitly added $(CC_FLAGS_FTRACE) for two test modules.

The two modules really needed these flags. But they are fine also
for the other modules.

We could do this later as a followup patch but it would be nice
to do so here.

Best Regards,
Petr

PS: BTW: The livepatch selftests fail in Linus's master now. But it
seems to be for another reason. I am going to dig into it.