TRACE-CMD-SHOW(1)
๐ธ TRACE-CMD-SHOW(1) โ the libtracefs manual, but make it make sense ๐
okay bestie, so this is the page for trace-cmd-show from the libtracefs manual, and honestly? it's a whole vibe check on your kernel's tracing buffer. let's go โจ
๐ NAME ๐
trace-cmd-show โ literally just shows you the contents of the Ftrace Linux kernel tracing buffer. that's it. that's the job. iconic behaviour, no notes ๐
โจ SYNOPSIS โจ
trace-cmd show [OPTIONS]
๐ฆ DESCRIPTION ๐ฆ
so trace-cmd(1) show displays the contents of one of the Ftrace Linux kernel tracing files: trace, snapshot, or trace_pipe. ngl it's basically the same energy as doing:
cat /sys/kernel/debug/tracing/trace
likeโฆ yes queen, that's the whole concept ๐ซถ
๐ OPTIONS ๐
-pโ instead of showing you the contents of thetracefile, it hits up thetrace_pipefile instead. the difference between the two? thetracefile is static. meaning if tracing is stopped,tracegives you the exact same contents every single time you look at it. like a screenshot ๐ธ
trace_pipe is a consuming read though โ the way that reading it eats the output of what you read, so you won't get the same thing a second time even if tracing is stopped. it will also block. if there's no data available, trace-cmd show will stop and wait for data to show up ๐ญ bestie she waits.
-sโ instead of reading thetracefile, read thesnapshotfile. a snapshot gets made when an application writes into it and the kernel does a swap between the currently active buffer and the current snapshot buffer. if no more swaps happen, the snapshot stays static. this one is not a consuming read, so you can look at it again and again, main character energy ๐-ccpu โ read only the trace file for a specified CPU.-fโ display the full path name of the file that's being displayed. very "here's my source, iykyk" ๐-Bbuf โ if a buffer instance was created, the-Boption accesses the files associated with the given buf. go get your buffer's files, bestie.--tracing_onโ show if tracing is on for the given instance.--current_tracerโ show what the current tracer is.--buffer_sizeโ show the current buffer size (per-cpu).--buffer_total_sizeโ show the total size of all buffers. all of them. the whole squad ๐--buffer_subbuf_sizeโ show the size in kilobytes of the sub-buffers of the ring buffer. so here's the lore: the ring buffer is broken up into equal size sub-buffers, where an event can only be as big as the sub-buffer data section (that's the size minus its meta data). no cap.--buffer_percentโ show the percentage the buffer must be filled before a reader that's blocked on thetrace_pipe_rawfile gets woken up:
0 : wake up immediately on any new data
1 - 99 : wake up on this percentage of the sub-buffers being full
100 : wake up after the buffer is full and the writer is on the last sub-buffer
pick your fighter ๐ฅ
--ftrace_filterโ show what function filters are set.--ftrace_notraceโ show what function disabled filters are set.--ftrace_pidโ show the PIDs the function tracer is limited to (if any). if any!! sometimes it's just vibes.--graph_functionโ show the functions that will be graphed.--graph_notraceโ show the functions that will not be graphed. they're on the do-not-call list ๐--hist[system:]event โ show the content of a histogramhistfile for a given event.--trigger[system:]event โ show the content of thetriggerfile for a given event.--cpumaskโ show the mask of CPUs that tracing will trace. the chosen ones โจ
fr fr: none of these are dangerous, they're all just reading. you're literally just looking at files, bestie. you got this ๐ซถ
๐ฅ SEE ALSO ๐ฅ
trace-cmd(1), trace-cmd-record(1), trace-cmd-report(1), trace-cmd-start(1), trace-cmd-extract(1), trace-cmd-reset(1), trace-cmd-split(1), trace-cmd-list(1), trace-cmd-listen(1)
the whole friend group. read them all, slay ๐
๐ AUTHOR ๐
Written by Steven Rostedt, <rostedt@goodmis.org[1]> โ the legend himself, we stan ๐ซก
โญ RESOURCES โญ
https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/
go look, it's giving open source excellence ๐ง
๐ธ COPYING ๐ธ
Copyright (C) 2010 Red Hat, Inc. Free use of this software is granted under the terms of the GNU Public License (GPL). periodt. ๐
๐ NOTES ๐
rostedt@goodmis.orgmailto:rostedt@goodmis.org
aaaand that's the page!! this one came to you from libtracefs, dated 03/09/2026 โ so if you're reading this from the future, hi bestie, hope your buffers are fresh ๐๐ โจ
๐ฆ where this page comes from
- arch rolling: trace-cmd 3.4-1 ยท GPL-2.0-only AND LGPL-2.1-only
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms