vfscount - Man Page

Count VFS calls ("vfs_*"). Uses bpftrace/eBPF.

Synopsis

vfscount.bt

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.

Requirements

CONFIG_BPF and bpftrace.

Examples

Count all VFS calls until Ctrl-C is hit:

# vfscount.bt

Fields

1st

Kernel function name (in @[])

2nd

Number of calls while tracing

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_").

Source

This is from bpftrace.

https://github.com/iovisor/bpftrace

Also look in the bpftrace distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool.

This is a bpftrace version of the bcc tool of the same name. The bcc tool may provide more options and customizations.

https://github.com/iovisor/bcc

OS

Linux

Stability

Unstable - in development.

Author

Brendan Gregg

See Also

vfsstat.bt(8)

Referenced By

bcc-filetop(8), bcc-funccount(8), bcc-vfsstat(8).

2018-09-06 USER COMMANDS