You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.6 KiB
55 lines
1.6 KiB
.TH vfscount 8 "2015-08-18" "USER COMMANDS"
|
|
.SH NAME
|
|
vfscount \- Count VFS calls ("vfs_*"). Uses Linux eBPF/bcc.
|
|
.SH SYNOPSIS
|
|
.B vfscount
|
|
.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 EXAMPLES
|
|
.TP
|
|
Count some VFS calls until Ctrl-C is hit:
|
|
#
|
|
.B vfscount
|
|
.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)
|