summaryrefslogtreecommitdiff
path: root/arch/parisc/kernel/module.lds
diff options
context:
space:
mode:
authorMark Rutland <mark.rutland@arm.com>2019-10-16 17:51:10 +0100
committerMark Rutland <mark.rutland@arm.com>2019-11-06 14:17:13 +0000
commitfbf6c73c5b264c25484fa9f449b5546569fe11f0 (patch)
treed14e5d8d6c80cece77271e30173124dd23fb75ef /arch/parisc/kernel/module.lds
parent4f5cafb5cb8471e54afdc9054d973535614f7675 (diff)
ftrace: add ftrace_init_nop()
Architectures may need to perform special initialization of ftrace callsites, and today they do so by special-casing ftrace_make_nop() when the expected branch address is MCOUNT_ADDR. In some cases (e.g. for patchable-function-entry), we don't have an mcount-like symbol and don't want a synthetic MCOUNT_ADDR, but we may need to perform some initialization of callsites. To make it possible to separate initialization from runtime modification, and to handle cases without an mcount-like symbol, this patch adds an optional ftrace_init_nop() function that architectures can implement, which does not pass a branch address. Where an architecture does not provide ftrace_init_nop(), we will fall back to the existing behaviour of calling ftrace_make_nop() with MCOUNT_ADDR. At the same time, ftrace_code_disable() is renamed to ftrace_nop_initialize() to make it clearer that it is intended to intialize a callsite into a disabled state, and is not for disabling a callsite that has been runtime enabled. The kerneldoc description of rec arguments is updated to cover non-mcount callsites. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Reviewed-by: Amit Daniel Kachhap <amit.kachhap@arm.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org> Reviewed-by: Torsten Duwe <duwe@suse.de> Tested-by: Amit Daniel Kachhap <amit.kachhap@arm.com> Tested-by: Sven Schnelle <svens@stackframe.org> Tested-by: Torsten Duwe <duwe@suse.de> Cc: Ingo Molnar <mingo@redhat.com>
Diffstat (limited to 'arch/parisc/kernel/module.lds')
0 files changed, 0 insertions, 0 deletions