From: Heiko Carstens <hca@linux.ibm.com>
To: "Masami Hiramatsu (Google)" <mhiramat@kernel.org>
Cc: Alexei Starovoitov <alexei.starovoitov@gmail.com>,
Steven Rostedt <rostedt@goodmis.org>,
Florent Revest <revest@chromium.org>,
linux-trace-kernel@vger.kernel.org,
LKML <linux-kernel@vger.kernel.org>,
Martin KaFai Lau <martin.lau@linux.dev>,
bpf <bpf@vger.kernel.org>, Alexei Starovoitov <ast@kernel.org>,
Jiri Olsa <jolsa@kernel.org>,
Alan Maguire <alan.maguire@oracle.com>,
Mark Rutland <mark.rutland@arm.com>,
linux-arch@vger.kernel.org,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
Huacai Chen <chenhuacai@kernel.org>,
WANG Xuerui <kernel@xen0n.name>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Vasily Gorbik <gor@linux.ibm.com>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Sven Schnelle <svens@linux.ibm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Subject: Re: [PATCH v16 04/18] function_graph: Replace fgraph_ret_regs with ftrace_regs
Date: Tue, 15 Oct 2024 20:39:06 +0200 [thread overview]
Message-ID: <20241015183906.19678-B-hca@linux.ibm.com> (raw)
In-Reply-To: <172895575716.107311.6784997045170009035.stgit@devnote2>
On Tue, Oct 15, 2024 at 10:29:17AM +0900, Masami Hiramatsu (Google) wrote:
> From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
>
> Use ftrace_regs instead of fgraph_ret_regs for tracing return value
> on function_graph tracer because of simplifying the callback interface.
>
> The CONFIG_HAVE_FUNCTION_GRAPH_RETVAL is also replaced by
> CONFIG_HAVE_FUNCTION_GRAPH_FREGS.
>
> Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
...
> diff --git a/arch/s390/kernel/mcount.S b/arch/s390/kernel/mcount.S
> index 7e267ef63a7f..a9ca56ea0858 100644
> --- a/arch/s390/kernel/mcount.S
> +++ b/arch/s390/kernel/mcount.S
> @@ -134,14 +134,15 @@ SYM_CODE_END(ftrace_common)
> SYM_FUNC_START(return_to_handler)
> stmg %r2,%r5,32(%r15)
> lgr %r1,%r15
> - aghi %r15,-(STACK_FRAME_OVERHEAD+__FGRAPH_RET_SIZE)
> + aghi %r15,-(STACK_FRAME_OVERHEAD+STACK_FRAME_SIZE_FREGS)
> stg %r1,__SF_BACKCHAIN(%r15)
> - la %r3,STACK_FRAME_OVERHEAD(%r15)
> - stg %r1,__FGRAPH_RET_FP(%r3)
> - stg %r2,__FGRAPH_RET_GPR2(%r3)
> - lgr %r2,%r3
> + la %r4,STACK_FRAME_OVERHEAD(%r15)
> + stg %r2,__PT_R2(%r4)
> + stg %r3,__PT_R3(%r4)
> + stg %r1,__PT_R15(%r4)
> + lgr %r2,%r4
> brasl %r14,ftrace_return_to_handler
> - aghi %r15,STACK_FRAME_OVERHEAD+__FGRAPH_RET_SIZE
> + aghi %r15,STACK_FRAME_SIZE_FREGS
> lgr %r14,%r2
> lmg %r2,%r5,32(%r15)
> BR_EX %r14
Why didn't you simply merge the addon patch which I provided, and
which I tested?
https://lore.kernel.org/all/20240916121656.20933-B-hca@linux.ibm.com
That would make things much simpler... e.g. your new patch is also
writing r3 to fregs, why? The stackframe allocation is also wrong.
I didn't try, but I guess the above code would crash instantly.
next prev parent reply other threads:[~2024-10-15 18:39 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-15 1:28 [PATCH v16 00/18] tracing: fprobe: function_graph: Multi-function graph and fprobe on fgraph Masami Hiramatsu (Google)
2024-10-15 1:28 ` [PATCH v16 01/18] tracing: Use arch_ftrace_regs() for ftrace_regs_*() macros Masami Hiramatsu (Google)
2024-10-15 21:27 ` Steven Rostedt
2024-10-15 23:25 ` Masami Hiramatsu
2024-10-15 23:28 ` Steven Rostedt
2024-10-15 1:28 ` [PATCH v16 02/18] tracing: Rename ftrace_regs_return_value to ftrace_regs_get_return_value Masami Hiramatsu (Google)
2024-10-15 1:29 ` [PATCH v16 03/18] function_graph: Pass ftrace_regs to entryfunc Masami Hiramatsu (Google)
2024-10-15 1:29 ` [PATCH v16 04/18] function_graph: Replace fgraph_ret_regs with ftrace_regs Masami Hiramatsu (Google)
2024-10-15 18:39 ` Heiko Carstens [this message]
2024-10-15 23:33 ` Masami Hiramatsu
2024-10-15 23:47 ` Masami Hiramatsu
2024-10-16 8:33 ` Heiko Carstens
2024-10-21 4:22 ` Masami Hiramatsu
2024-10-15 1:29 ` [PATCH v16 05/18] function_graph: Pass ftrace_regs to retfunc Masami Hiramatsu (Google)
2024-10-15 1:29 ` [PATCH v16 06/18] fprobe: Use ftrace_regs in fprobe entry handler Masami Hiramatsu (Google)
2024-10-15 1:29 ` [PATCH v16 07/18] fprobe: Use ftrace_regs in fprobe exit handler Masami Hiramatsu (Google)
2024-10-15 1:30 ` [PATCH v16 08/18] tracing: Add ftrace_partial_regs() for converting ftrace_regs to pt_regs Masami Hiramatsu (Google)
2024-10-15 1:30 ` [PATCH v16 09/18] tracing: Add ftrace_fill_perf_regs() for perf event Masami Hiramatsu (Google)
2024-10-15 18:18 ` Heiko Carstens
2024-10-15 23:34 ` Masami Hiramatsu
2024-10-15 1:30 ` [PATCH v16 10/18] tracing/fprobe: Enable fprobe events with CONFIG_DYNAMIC_FTRACE_WITH_ARGS Masami Hiramatsu (Google)
2024-10-15 1:30 ` [PATCH v16 11/18] bpf: Enable kprobe_multi feature if CONFIG_FPROBE is enabled Masami Hiramatsu (Google)
2024-10-15 1:30 ` [PATCH v16 12/18] ftrace: Add CONFIG_HAVE_FTRACE_GRAPH_FUNC Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 13/18] fprobe: Rewrite fprobe on function-graph tracer Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 14/18] tracing/fprobe: Remove nr_maxactive from fprobe Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 15/18] selftests: ftrace: Remove obsolate maxactive syntax check Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 16/18] selftests/ftrace: Add a test case for repeating register/unregister fprobe Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 17/18] Documentation: probes: Update fprobe on function-graph tracer Masami Hiramatsu (Google)
2024-10-15 1:31 ` [PATCH v16 18/18] bpf: Add get_entry_ip() for arm64 Masami Hiramatsu (Google)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241015183906.19678-B-hca@linux.ibm.com \
--to=hca@linux.ibm.com \
--cc=agordeev@linux.ibm.com \
--cc=alan.maguire@oracle.com \
--cc=alexei.starovoitov@gmail.com \
--cc=aou@eecs.berkeley.edu \
--cc=ast@kernel.org \
--cc=borntraeger@linux.ibm.com \
--cc=bp@alien8.de \
--cc=bpf@vger.kernel.org \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=dave.hansen@linux.intel.com \
--cc=gor@linux.ibm.com \
--cc=hpa@zytor.com \
--cc=jolsa@kernel.org \
--cc=kernel@xen0n.name \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=martin.lau@linux.dev \
--cc=mathieu.desnoyers@efficios.com \
--cc=mhiramat@kernel.org \
--cc=mingo@redhat.com \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=revest@chromium.org \
--cc=rostedt@goodmis.org \
--cc=svens@linux.ibm.com \
--cc=tglx@linutronix.de \
--cc=will@kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).