.TH vfscount 8 "2015-08-18" "USER COMMANDS" .SH NAME vfscount \- Count VFS calls ("vfs_*"). Uses Linux eBPF/bcc. .SH SYNOPSIS .B vfscount [duration] .SH DESCRIPTION This counts VFS calls. This can be useful for general workload characterization of these operations. This works by tracing all kernel functions beginning with "vfs_" using dynamic tracing. This may match more functions than you are interested in measuring: Edit the script to customize which functions to trace. Since this uses BPF, only the root user can use this tool. .SH REQUIREMENTS CONFIG_BPF and bcc. .SH OPTIONS .TP duration duration of the trace in seconds. .SH EXAMPLES .TP Count some VFS calls until Ctrl-C is hit: # .B vfscount .TP Count some VFS calls in ten seconds # .B vfscount 10 .SH FIELDS .TP ADDR Address of the instruction pointer that was traced (only useful if the FUNC column is suspicious and you would like to double check the translation). .TP FUNC Kernel function name .TP COUNT Number of calls while tracing .SH OVERHEAD This traces kernel vfs functions and maintains in-kernel counts, which are asynchronously copied to user-space. While the rate of VFS operations can be very high (>1M/sec), this is a relatively efficient way to trace these events, and so the overhead is expected to be small for normal workloads. Measure in a test environment, and if overheads are an issue, edit the script to reduce the types of vfs functions traced (currently all beginning with "vfs_"). .SH SOURCE This is from bcc. .IP https://github.com/iovisor/bcc .PP Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux .SH STABILITY Unstable - in development. .SH AUTHOR Brendan Gregg .SH SEE ALSO vfsstat(8)