[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <yt9dee51ctfn.fsf@linux.ibm.com>
Date: Fri, 21 Jan 2022 10:46:36 +0100
From: Sven Schnelle <svens@...ux.ibm.com>
To: Yinan Liu <yinan@...ux.alibaba.com>
Cc: rostedt@...dmis.org, peterz@...radead.org,
mark-pk.tsai@...iatek.com, mingo@...hat.com,
linux-kernel@...r.kernel.org, hca@...ux.ibm.com,
linux-s390@...r.kernel.org
Subject: Re: [PATCH v8] scripts: ftrace - move the sort-processing in
ftrace_init
Hi Yinan,
Yinan Liu <yinan@...ux.alibaba.com> writes:
> When the kernel starts, the initialization of ftrace takes
> up a portion of the time (approximately 6~8ms) to sort mcount
> addresses. We can save this time by moving mcount-sorting to
> compile time.
>
> Signed-off-by: Yinan Liu <yinan@...ux.alibaba.com>
> Reported-by: kernel test robot <lkp@...el.com>
> Reported-by: kernel test robot <oliver.sang@...el.com>
> ---
> kernel/trace/ftrace.c | 11 +++-
> scripts/Makefile | 6 +-
> scripts/link-vmlinux.sh | 6 +-
> scripts/sorttable.c | 2 +
> scripts/sorttable.h | 120 +++++++++++++++++++++++++++++++++++++++-
> 5 files changed, 137 insertions(+), 8 deletions(-)
while i like the idea, this unfortunately breaks ftrace on s390. The
reason for that is that the compiler generates relocation entries for
all the addresses in __mcount_loc. During boot, the s390 decompressor
iterates through all the relocations and overwrites the nicely
sorted list between __start_mcount_loc and __stop_mcount_loc with
the unsorted list because the relocations entries are not adjusted.
Of course we could just disable that option, but that would make us
different compared to x86 which i don't like. Adding code to sort the
relocation would of course also fix that, but i don't think it is a good
idea to rely on the order of relocations.
Any thoughts how a fix could look like, and whether that could also be a
problem on other architectures?
Thanks
Sven
Powered by blists - more mailing lists