On Fri, Jun 26, 2020 at 1:17 PM Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote: > > On Thu, Jun 25, 2020 at 5:14 PM Song Liu <songliubraving@xxxxxx> wrote: > > > > Introduce helper bpf_get_task_stack(), which dumps stack trace of given > > task. This is different to bpf_get_stack(), which gets stack track of > > current task. One potential use case of bpf_get_task_stack() is to call > > it from bpf_iter__task and dump all /proc/<pid>/stack to a seq_file. > > > > bpf_get_task_stack() uses stack_trace_save_tsk() instead of > > get_perf_callchain() for kernel stack. The benefit of this choice is that > > stack_trace_save_tsk() doesn't require changes in arch/. The downside of > > using stack_trace_save_tsk() is that stack_trace_save_tsk() dumps the > > stack trace to unsigned long array. For 32-bit systems, we need to > > translate it to u64 array. > > > > Signed-off-by: Song Liu <songliubraving@xxxxxx> > > --- > > Looks great, I just think that there are cases where user doesn't > necessarily has valid task_struct pointer, just pid, so would be nice > to not artificially restrict such cases by having extra helper. > > Acked-by: Andrii Nakryiko <andriin@xxxxxx> oh, please also fix a typo in the subject, it will make grepping more frustrating [...]