On Mon, 18 Oct 2021, 04:46 Dongliang Mu, <[email protected]> wrote:

> Hi all,
>
> I am writing to kindly ask one question: is there any tracing
> mechanism in Linux kernel that can trace all the executed instructions
> of a user process? If this user process is run on different
> processors, traces of this process on different processors should be
> also recorded.
>

You've not explained in detail what is the purpose of the tracing that you
want to do. Missing this information I can only provide you a list of links
to various tools and methods. Take a look by yourself and try to figure out
what is better suited for your needs...

https://lwn.net/Kernel/Index/#Development_tools-Kernel_tracing
trace-cmd: https://trace-cmd.org
perf ftrace: <Linux source>/tools/perf/Documentation/perf-trace.txt
perf-tools: https://github.com/brendangregg/perf-tools

In particular, the "function_graph" tracer of ftrace seems to be suited for
your purposes:

https://man7.org/linux/man-pages/man1/trace-cmd.1.html
https://man7.org/linux/man-pages/man1/trace-cmd-record.1.html
https://man7.org/linux/man-pages/man1/trace-cmd-report.1.html

Obviously, gdb (and friends) is still invaluable (but it may be difficult
to use, depending on your knowledge and experience, so use it if you really
know that  you need it):

https://www.kernel.org/doc/html/latest/dev-tools/gdb-kernel-debugging.html
https://www.kernel.org/doc/html/latest/dev-tools/kgdb.html

Regards,

Fabio M. De Francesco


> Any comment is welcome.
>
> --
> My best regards to you.
>
>      No System Is Safe!
>      Dongliang Mu
>
> _______________________________________________
> Kernelnewbies mailing list
> [email protected]
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
_______________________________________________
Kernelnewbies mailing list
[email protected]
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to