recordmcount: Fix nop_mcount() function
The removal of the longjmp code in recordmcount.c mistakenly made the return of make_nop() being negative an exit of nop_mcount(). It should not exit the routine, but instead just not process that part of the code. By exiting with an error code, it would cause the update of recordmcount to fail some files which would fail the build if ftrace function tracing was enabled. Link: http://lkml.kernel.org/r/20191009110538.5909fec6@gandalf.local.home Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Tested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Fixes: 3f1df12019f3 ("recordmcount: Rewrite error/success handling") Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
This commit is contained in:
parent
bf8e602186
commit
7f8557b88d
@ -389,11 +389,8 @@ static int nop_mcount(Elf_Shdr const *const relhdr,
|
||||
mcountsym = get_mcountsym(sym0, relp, str0);
|
||||
|
||||
if (mcountsym == Elf_r_sym(relp) && !is_fake_mcount(relp)) {
|
||||
if (make_nop) {
|
||||
if (make_nop)
|
||||
ret = make_nop((void *)ehdr, _w(shdr->sh_offset) + _w(relp->r_offset));
|
||||
if (ret < 0)
|
||||
return -1;
|
||||
}
|
||||
if (warn_on_notrace_sect && !once) {
|
||||
printf("Section %s has mcount callers being ignored\n",
|
||||
txtname);
|
||||
|
Loading…
x
Reference in New Issue
Block a user