On Mon, 22 Jan 2024 17:43:35 +0100 Pierre Gondois <pierre.gondois@xxxxxxx> wrote: > The 'trace-cmd split' command conserves all buffers/instances > of the input .dat file. Add support to select the instances to > keep and to place as the top instance in an output .dat file. > > Multiple .dat files can be generated with different combinations > of the instances to keep. The first instance in the command line > is selected as the top instance in an output .dat file. > > For example, with a trace recorded with: > $ trace-cmd record -e sched_wakeup -B switch_instance \ > -e sched_switch -B timer_instance -e timer I tried this with a trace.dat file that has a instance called "tast" and it didn't work. Note, the top instance had no data. $ trace-cmd split -i /work/traces/trace-tast.dat -o /tmp/trace-tast2.dat -B tast $ trace-cmd report /tmp/trace-tast2.dat cpus=2 tast: trace-cmd-3559 [001] 59413.154884: sched_waking: comm=kworker/u4:2 pid=1324 prio=120 target_cpu=000 tast: trace-cmd-3564 [000] 59413.154900: sched_switch: trace-cmd:3564 [120] R ==> kworker/u4:2:1324 [120] tast: trace-cmd-3559 [001] 59413.154907: sched_switch: trace-cmd:3559 [120] S ==> trace-cmd:3565 [120] tast: kworker/u4:2-1324 [000] 59413.154911: sched_waking: comm=sshd pid=18725 prio=120 target_cpu=001 tast: kworker/u4:2-1324 [000] 59413.154929: sched_switch: kworker/u4:2:1324 [120] I ==> sshd:18725 [120] tast: sshd-18725 [000] 59413.155120: sched_waking: comm=sslh-fork pid=18724 prio=120 target_cpu=001 tast: sshd-18725 [000] 59413.155178: sched_waking: comm=kworker/0:1 pid=815 prio=120 target_cpu=000 tast: sshd-18725 [000] 59413.155189: sched_switch: sshd:18725 [120] S ==> sslh-fork:18724 [120] tast: sslh-fork-18724 [000] 59413.155303: sched_switch: sslh-fork:18724 [120] S ==> kworker/0:1:815 [120] Still has "tast" as an instance and not the top. -- Steve > > Creating a test.dat file containing the top instance and > the switch_instance: > $ trace-cmd split --top -B switch_instance -o test.dat