writeback man page

writeback.bt ā€” Trace file system writeback events with details. Uses bpftrace/eBPF.

Synopsis

writeback.bt

Description

This traces when file system dirtied pages are flushed to disk by kernel writeback, and prints details including when the event occurred, and the duration of the event. This can be useful for correlating these times with other performance problems, and if there is a match, it would be a clue that the problem may be caused by writeback. How quickly the kernel does writeback can be tuned: see the kernel docs, eg, vm.dirty_writeback_centisecs.

This uses the tracepoint:writeback:writeback_start and tracepoint:writeback:writeback_written tracepoints.

Since this uses BPF, only the root user can use this tool.

Requirements

CONFIG_BPF and bpftrace.

Examples

Trace all writeback events with timestamps and latency details:

# writeback.bt

Fields

TIME

Time that the writeback event completed, in %H:%M:%S format.

DEVICE

Device name in major:minor number format.

PAGES

Pages written during writeback.

REASON

Reason for the writeback event. This may be "background", "vmscan", "sync", "periodic", etc.

ms

Duration of the writeback event in milliseconds.

Overhead

Since writeback events are expected to be infrequent (<10/sec), the overhead of this tool is expected to be negligible (near 0%).

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.

OS

Linux

Stability

Unstable - in development.

Author

Brendan Gregg

See Also

biosnoop(8)

Info

2018-09-14 USER COMMANDS