[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250213125302.12012-A-hca@linux.ibm.com>
Date: Thu, 13 Feb 2025 13:53:02 +0100
From: Heiko Carstens <hca@...ux.ibm.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Catalin Marinas <catalin.marinas@....com>, Will Deacon <will@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
linux-arm-kernel@...ts.infradead.org,
Mark Rutland <mark.rutland@....com>,
Linux Trace Kernel <linux-trace-kernel@...r.kernel.org>,
Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>, linux-s390@...r.kernel.org
Subject: Re: [PATCH] arm64: scripts/sorttable: Implement sorting mcount_loc
at boot for arm64
On Mon, Feb 10, 2025 at 02:26:47PM -0500, Steven Rostedt wrote:
> For the s390 folks. I cross compiled a s390 and looked at the mcount_loc
> section, and I have no idea how to implement this for that. I wrote a elf
> parser to dump sections based symbols:
>
> https://rostedt.org/code/dump_elf_sym.c
>
> And ran it on the s390 vmlinux:
>
> $ ./dump_elf_sym vmlinux __start_mcount_loc __stop_mcount_loc
> 1801620: .. .. .. .. .. .. .. .. 00 00 00 00 00 11 70 20 ......... .....p
> 1801630: 00 00 00 00 00 11 70 90 00 00 00 00 00 11 70 a0 ......p.. .....p.
> 1801640: 00 00 00 00 00 11 71 10 00 00 00 00 00 11 71 20 ......q.. .....q
> 1801650: 00 00 00 00 00 11 71 90 00 00 00 00 01 7c 70 00 ......q.. ....|p.
> 1801660: 00 00 00 00 01 7c 70 20 00 00 00 00 01 7c 70 40 .....|p . ....|p@
> 1801670: 00 00 00 00 01 7c 70 60 00 00 00 00 01 7c 70 70 .....|p`. ....|pp
> 1801680: 00 00 00 00 01 7c 70 98 00 00 00 00 01 7c 70 c0 .....|p.. ....|p.
> 1801690: 00 00 00 00 01 7c 70 d0 00 00 00 00 01 7c 71 68 .....|p.. ....|qh
> [..]
>
> It looks like addresses in that section...
Those are the addresses of the mcount locations. After looking at
sorttable.c it really looks like that for s390 we can simply select
HAVE_BUILDTIME_MCOUNT_SORT without any further changes.
I just tested it with different compiler options (fentry vs hotpatch),
including selecting FTRACE_SORT_STARTUP_TEST, and as expected everything
works.
I'm going to give it some more testing in our CI - but if nothing breaks a
patch which selects HAVE_BUILDTIME_MCOUNT_SORT for s390 will go upstream
with the next merge window.
Powered by blists - more mailing lists