ndctl-start-scrub(1)

ndctl-start-scrub1

Start an address range scrub (ars) operation

Usage

ndctl start-scrub [<bus-id> <bus-id2> ... <bus-idN>] [<options>]

Overview

NVDIMM Address Range Scrub is a capability provided by platform firmware that allows for the discovery of memory errors by system software. It enables system software to pre-emptively avoid accesses that could lead to uncorrectable memory error handling events, and it otherwise allows memory errors to be enumerated.

The kernel provides a sysfs file (scrub) that when written with the string "1\n" initiates an ARS operation. The ndctl start-scrub operation starts an ARS, across all specified buses, and the kernel in turn proceeds to scrub every persistent memory address region on the specified buses.

Examples

Start a scrub on all nvdimm buses in the system. The json listing report only includes the buses that support ARS operations.

# ndctl start-scrub
[
  {
    "provider":"nfit_test.1",
    "dev":"ndbus3",
    "scrub_state":"active"
  },
  {
    "provider":"nfit_test.0",
    "dev":"ndbus2",
    "scrub_state":"active"
  }
]

When specifying an individual bus, or if there is only one bus in the system, the command reports whether ARS support is available.

# ndctl start-scrub e820
error starting scrub: Operation not supported

Options

-v, --verbose

Emit debug messages for the ARS start process

Releases

5 releases since Debian 10 (Buster); the text changed 4 times.

  1. 10
  2. 11
  3. 12
  4. 13
  5. Arch

From ndctl 85-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.