Re: Any tracing mechanism can track the executed instructions of a user process in the kernel?

From: jim . cromie
Date: Mon Oct 18 2021 - 17:01:05 EST


On Sun, Oct 17, 2021 at 8:46 PM Dongliang Mu <mudongliangabcd@xxxxxxxxx> 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.
>
> Any comment is welcome.
>

take a look at rr-project.org

what rr does

rr aspires to be your primary C/C++ debugging tool for Linux,
replacing — well, enhancing — gdb. You record a failure once, then
debug the recording, deterministically, as many times as you want. The
same execution is replayed every time.

rr also provides efficient reverse execution under gdb. Set
breakpoints and data watchpoints and quickly reverse-execute to where
they were hit.