Hello, I'm happy to announce that uftrace v0.13 is released. You can get it from the below link: https://github.com/namhyung/uftrace/releases/tag/v0.13 As usual, this release contains new features and many bug fixes. This release comes with a couple of new filtering options. The first one is the location filter. The -L or --loc-filter option can specify names of directory or file for the source code. That means the binary should have the debug information (DWARF). Since uftrace saves the (reduced form of) debug info separately, we can use this option at replay as well. $ uftrace -L myfile.c myprog The above will show functions only in the 'myfile.c' file. You can also use directory names and mix the two. When you use a directory name, it will match all files under the directory. And the regex or the wildcard patterns can be used for more fine-grainded filtering. The next one is the size filter using -Z or --size-filter option. Actually this is not a new addition, we had it for the dynamic tracing. But now we can use it as a general filter regardless if you use the dynamic tracing or not. $ uftrace -Z 100 myprog The above will show functions that their size is greater than equal to 100 bytes. At record (or in live command), it can read the size from the ELF symbol table directly. When you use the option during replay (or report and so on), it determines the size from the symbol file in the uftrace data. But it can have a small difference than the original symbol size (usually bigger than the original). This is because the symbol file doesn't actually save the size of functions. It currently saves the symbol addresses only and function size is calculated as a difference between the two adjacent fucntions. If your compiler added some paddings at the end of the function (to aligned the function start address), it'll have a different size. Please be aware of that when using it from replay. To check the size in the symbol file, you can use 'size' field in the uftrace report output. $ uftrace report -f size This will show the size of functions (saved in the uftrace data). The uftrace dump got `--mermaid` option to produce the mermaid format [1] for visualizing function call graphs. Also it supports to change the base function of the graph interactively. The --no-sched-preempt option is to suppress schedule events only if it's pre-empted. So the voluntary schedules will be shown. And we added many testing/CI infra changes thanks for Github actions. I appreciate Travis CI team for the works so far but decided to move. Finally, it added the preliminary support for running an agent in background. It does nothing as of now, but it will talk to external uftrace processes via a unix socket to control the tracing behavior later. The uftrace live got -p option to specify the pid of the original process with the agent. There are many more things. Thank you all for making uftrace more useful, efficient and portable! Namhyung [1] https://mermaid-js.github.io