Hi, Greg.
I am developing the feature to collect the NuttX internal task events and dump
the data in Linux ftrace format.
The dumped data can be displayed graphically by using "TraceCompass".
It extends the NuttX sched note APIs to get enter/leave event of the interrupt
handler and system calls.
The detail is described at :
https://github.com/YuuichiNakamura/nuttx-task-tracer-doc
And the latest implementation is available at :
https://github.com/YuuichiNakamura/incubator-nuttx
https://github.com/YuuichiNakamura/incubator-nuttx-apps
in "feature/task-tracer" branch.
I'm glad if this is helpful to your ideas.
Thanks,
Yuuichi Nakamura
Nice work. This seems to replicate a lot of existing logic at least
at the level of the block diagram:
1. sched/sched_tracer.c seems to be functionally like
sched/sched/sched_note.c with CONFIG_SCHED_INSTRUMENTATION_BUFFER
selected.
2. dev/tracer looks a lot like dev/misc/not_driver.c
3. The change to apps/nshlib seem to be a lot like
apps/system/sched_note.
One difference is the ftrace output format. apps/system/sched_note
just outputs like debug info to the syslog. Are there other
functional differences? Should these related implementations be
merged in some way?
Greg
Regardless of that decision, it would be nice if you could at least
upstream the interrupt and system call instrumentation. That will be
needed in any event and we should re-use that logic, not re-invent it.
Thanks,
Greg