From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Puranjay Mohan <puranjay@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Palmer Dabbelt <palmer@rivosinc.com>,
Sasha Levin <sashal@kernel.org>,
paul.walmsley@sifive.com, palmer@dabbelt.com,
aou@eecs.berkeley.edu, andy.chiu@sifive.com,
samuel.holland@sifive.com, dev.mbstr@gmail.com,
linux-riscv@lists.infradead.org
Subject: [PATCH AUTOSEL 6.1 15/15] riscv: stacktrace: fix usage of ftrace_graph_ret_addr()
Date: Tue, 16 Jul 2024 10:28:12 -0400 [thread overview]
Message-ID: <20240716142825.2713416-15-sashal@kernel.org> (raw)
In-Reply-To: <20240716142825.2713416-1-sashal@kernel.org>
From: Puranjay Mohan <puranjay@kernel.org>
[ Upstream commit 393da6cbb2ff89aadc47683a85269f913aa1c139 ]
ftrace_graph_ret_addr() takes an `idx` integer pointer that is used to
optimize the stack unwinding. Pass it a valid pointer to utilize the
optimizations that might be available in the future.
The commit is making riscv's usage of ftrace_graph_ret_addr() match
x86_64.
Signed-off-by: Puranjay Mohan <puranjay@kernel.org>
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Link: https://lore.kernel.org/r/20240618145820.62112-1-puranjay@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
arch/riscv/kernel/stacktrace.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/riscv/kernel/stacktrace.c b/arch/riscv/kernel/stacktrace.c
index 0d3f00eb0baee..10e311b2759d3 100644
--- a/arch/riscv/kernel/stacktrace.c
+++ b/arch/riscv/kernel/stacktrace.c
@@ -32,6 +32,7 @@ void notrace walk_stackframe(struct task_struct *task, struct pt_regs *regs,
bool (*fn)(void *, unsigned long), void *arg)
{
unsigned long fp, sp, pc;
+ int graph_idx = 0;
int level = 0;
if (regs) {
@@ -68,7 +69,7 @@ void notrace walk_stackframe(struct task_struct *task, struct pt_regs *regs,
pc = regs->ra;
} else {
fp = frame->fp;
- pc = ftrace_graph_ret_addr(current, NULL, frame->ra,
+ pc = ftrace_graph_ret_addr(current, &graph_idx, frame->ra,
&frame->ra);
if (pc == (unsigned long)ret_from_exception) {
if (unlikely(!__kernel_text_address(pc) || !fn(arg, pc)))
--
2.43.0
prev parent reply other threads:[~2024-07-16 14:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-16 14:27 [PATCH AUTOSEL 6.1 01/15] net: mac802154: Fix racy device stats updates by DEV_STATS_INC() and DEV_STATS_ADD() Sasha Levin
2024-07-16 14:27 ` [PATCH AUTOSEL 6.1 02/15] powerpc/pseries: Whitelist dtl slub object for copying to userspace Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 03/15] powerpc/eeh: avoid possible crash when edev->pdev changes Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 04/15] scsi: libsas: Fix exp-attached device scan after probe failure scanned in again after probe failed Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 05/15] tee: optee: ffa: Fix missing-field-initializers warning Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 06/15] Bluetooth: hci_core: cancel all works upon hci_unregister_dev() Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 07/15] bluetooth/l2cap: sync sock recv cb and release Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 08/15] erofs: ensure m_llen is reset to 0 if metadata is invalid Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 09/15] drm/amd/display: Reset freesync config before update new state Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 10/15] drm/amd/display: Account for cursor prefetch BW in DML1 mode support Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 11/15] drm/radeon: check bo_va->bo is non-NULL before using it Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 12/15] fs: better handle deep ancestor chains in is_subdir() Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 13/15] wifi: iwlwifi: properly set WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK Sasha Levin
2024-07-16 14:28 ` [PATCH AUTOSEL 6.1 14/15] drivers/perf: riscv: Reset the counter to hpmevent mapping while starting cpus Sasha Levin
2024-07-16 14:28 ` Sasha Levin [this message]
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=20240716142825.2713416-15-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=andy.chiu@sifive.com \
--cc=aou@eecs.berkeley.edu \
--cc=dev.mbstr@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=palmer@rivosinc.com \
--cc=paul.walmsley@sifive.com \
--cc=puranjay@kernel.org \
--cc=rostedt@goodmis.org \
--cc=samuel.holland@sifive.com \
--cc=stable@vger.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