On Tue, Sep 29, 2020 at 5:13 PM Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > > On Tue, 29 Sep 2020 14:46:08 -0700 > Sami Tolvanen <samitolvanen@xxxxxxxxxx> wrote: > > > +++ b/kernel/trace/Kconfig > > @@ -595,6 +595,22 @@ config FTRACE_MCOUNT_RECORD > > depends on DYNAMIC_FTRACE > > depends on HAVE_FTRACE_MCOUNT_RECORD > > > > +config FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY > > + bool > > + depends on FTRACE_MCOUNT_RECORD > > + > > +config FTRACE_MCOUNT_USE_CC > > + def_bool y > > + depends on $(cc-option,-mrecord-mcount) > > Does the above get executed at every build? Or does a make *config need > to be done? If someone were to pass a .config to someone else that had > a compiler that didn't support this, would it be changed if the person > just did a make? Yes, it's updated if you copy a .config and just run make. For example, here's what happens when I create a config with gcc and then build it with Clang: $ make defconfig ... $ ./scripts/config -e FUNCTION_TRACER -e DYNAMIC_FTRACE $ make olddefconfig ... $ grep MCOUNT_USE .config CONFIG_FTRACE_MCOUNT_USE_CC=y $ make CC=clang scripts/kconfig/conf --syncconfig Kconfig ... ^C $ grep MCOUNT_USE .config CONFIG_FTRACE_MCOUNT_USE_OBJTOOL=y Sami