---
name: "syncsnoop-bpfcc"
section: "8"
platform: "linux"
package: "bpfcc-tools"
version: "0.31.0+ds-7"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/syncsnoop-bpfcc"
---

# syncsnoop-bpfcc(8)

Trace sync() syscall. Uses Linux eBPF/bcc.

## NAME

syncsnoop - Trace sync() syscall. Uses Linux eBPF/bcc.

## SYNOPSIS

**syncsnoop**

## DESCRIPTION

syncsnoop traces calls to sync(), which flushes file system buffers to storage devices. These calls can cause performance perturbations, and it can be useful to know if they are happening and how frequently.

This works by tracing the kernel sys\_sync() function using dynamic tracing, and will need updating to match any changes to this function.

This makes use of a Linux 4.4 feature (bpf\_perf\_event\_output()); for kernels older than 4.4, see the version under tools/old, which uses an older mechanism.

This program is also a basic example of eBPF/bcc.

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

## REQUIREMENTS

CONFIG\_BPF and bcc.

## EXAMPLES

- Trace calls to sync():

  \# **syncsnoop**

## FIELDS

- TIME(s)

  Time of the call, in seconds.

- CALL

  Call traced.

## OVERHEAD

This traces the kernel sync function and prints output for each event. As the rate of this is generally expected to be low (\<\< 100/s), the overhead is also expected to be negligible.

## SOURCE

This is from bcc.

-

  https://github.com/iovisor/bcc

Also look in the bcc 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, original BCC Python version Tiago Ilieve, CO-RE version

## SEE ALSO

[iostat(1)](/iostat/1.md)
