Thread (161 messages) 161 messages, 8 authors, 2025-04-24

Re: [PATCH v4 32/39] perf: Remove get_perf_callchain() 'crosstask' argument

From: Josh Poimboeuf <jpoimboe@kernel.org>
Date: 2025-01-24 22:00:48
Also in: linux-perf-users, linux-toolchains, lkml

On Fri, Jan 24, 2025 at 10:13:23AM -0800, Andrii Nakryiko wrote:
On Tue, Jan 21, 2025 at 6:32 PM Josh Poimboeuf [off-list ref] wrote:
quoted
@@ -430,10 +429,8 @@ static long __bpf_get_stack(struct pt_regs *regs, struct task_struct *task,
        if (task && user && !user_mode(regs))
                goto err_fault;

-       /* get_perf_callchain does not support crosstask user stack walking
-        * but returns an empty stack instead of NULL.
-        */
-       if (crosstask && user) {
+       /* get_perf_callchain() does not support crosstask stack walking */
+       if (crosstask) {
crosstask stack trace is supported for kernel stack traces (see
get_callchain_entry_for_task() call), so this is breaking that case
Oh I see, thanks.

BTW, that seems dubious, does it do anything to ensure the task isn't
running?   Otherwise the unwind is going to be a wild ride.

-- 
Josh
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help