* [PATCH v2] rethook: Remove warning messages printed for finding return address of a frame.
@ 2024-04-08 17:51 Kui-Feng Lee
2024-04-09 0:22 ` Masami Hiramatsu
0 siblings, 1 reply; 2+ messages in thread
From: Kui-Feng Lee @ 2024-04-08 17:51 UTC (permalink / raw
To: mhiramat, martin.lau, kernel-team, andrii, linux-trace-kernel,
bpf, daniel
Cc: sinquersw, kuifeng, Kui-Feng Lee, John Fastabend
The function rethook_find_ret_addr() prints a warning message and returns 0
when the target task is running and is not the "current" task in order to
prevent the incorrect return address, although it still may return an
incorrect address.
However, the warning message turns into noise when BPF profiling programs
call bpf_get_task_stack() on running tasks in a firm with a large number of
hosts.
The callers should be aware and willing to take the risk of receiving an
incorrect return address from a task that is currently running other than
the "current" one. A warning is not needed here as the callers are intent
on it.
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: Kui-Feng Lee <thinker.li@gmail.com>
---
Changes from v1:
- Rephrased the commit log.
- Removed the confusing last part of the first paragraph.
- Removed "frequently" from the 2nd paragraph, replaced by "a firm with
a large number of hosts".
v1: https://lore.kernel.org/all/20240401191621.758056-1-thinker.li@gmail.com/
---
kernel/trace/rethook.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/trace/rethook.c b/kernel/trace/rethook.c
index fa03094e9e69..4297a132a7ae 100644
--- a/kernel/trace/rethook.c
+++ b/kernel/trace/rethook.c
@@ -248,7 +248,7 @@ unsigned long rethook_find_ret_addr(struct task_struct *tsk, unsigned long frame
if (WARN_ON_ONCE(!cur))
return 0;
- if (WARN_ON_ONCE(tsk != current && task_is_running(tsk)))
+ if (tsk != current && task_is_running(tsk))
return 0;
do {
--
2.34.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] rethook: Remove warning messages printed for finding return address of a frame.
2024-04-08 17:51 [PATCH v2] rethook: Remove warning messages printed for finding return address of a frame Kui-Feng Lee
@ 2024-04-09 0:22 ` Masami Hiramatsu
0 siblings, 0 replies; 2+ messages in thread
From: Masami Hiramatsu @ 2024-04-09 0:22 UTC (permalink / raw
To: Kui-Feng Lee
Cc: martin.lau, kernel-team, andrii, linux-trace-kernel, bpf, daniel,
sinquersw, kuifeng, John Fastabend
On Mon, 8 Apr 2024 10:51:40 -0700
Kui-Feng Lee <thinker.li@gmail.com> wrote:
> The function rethook_find_ret_addr() prints a warning message and returns 0
> when the target task is running and is not the "current" task in order to
> prevent the incorrect return address, although it still may return an
> incorrect address.
>
> However, the warning message turns into noise when BPF profiling programs
> call bpf_get_task_stack() on running tasks in a firm with a large number of
> hosts.
>
> The callers should be aware and willing to take the risk of receiving an
> incorrect return address from a task that is currently running other than
> the "current" one. A warning is not needed here as the callers are intent
> on it.
>
OK, looks good to me. Let me pick it to probes/for-next. Thanks!
> Acked-by: Andrii Nakryiko <andrii@kernel.org>
> Acked-by: John Fastabend <john.fastabend@gmail.com>
> Signed-off-by: Kui-Feng Lee <thinker.li@gmail.com>
>
> ---
> Changes from v1:
>
> - Rephrased the commit log.
>
> - Removed the confusing last part of the first paragraph.
>
> - Removed "frequently" from the 2nd paragraph, replaced by "a firm with
> a large number of hosts".
>
> v1: https://lore.kernel.org/all/20240401191621.758056-1-thinker.li@gmail.com/
> ---
> kernel/trace/rethook.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/trace/rethook.c b/kernel/trace/rethook.c
> index fa03094e9e69..4297a132a7ae 100644
> --- a/kernel/trace/rethook.c
> +++ b/kernel/trace/rethook.c
> @@ -248,7 +248,7 @@ unsigned long rethook_find_ret_addr(struct task_struct *tsk, unsigned long frame
> if (WARN_ON_ONCE(!cur))
> return 0;
>
> - if (WARN_ON_ONCE(tsk != current && task_is_running(tsk)))
> + if (tsk != current && task_is_running(tsk))
> return 0;
>
> do {
> --
> 2.34.1
>
--
Masami Hiramatsu (Google) <mhiramat@kernel.org>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-04-09 0:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-08 17:51 [PATCH v2] rethook: Remove warning messages printed for finding return address of a frame Kui-Feng Lee
2024-04-09 0:22 ` Masami Hiramatsu
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 read-only IMAP folder(s) and NNTP newsgroup(s).