NDCTL User Guide
HomePMDKNDCTLBlog
v71
v71
  • NDCTL User Guide
  • Installing NDCTL & DAXCTL
    • Installing NDCTL and DAXCTL Packages on Linux
    • Installing NDCTL and DAXCTL from Source on Linux
  • Quick Start
  • Concepts
    • NVDIMM Devices
    • PMEM and BLK Modes
    • Regions
      • Regions, Atomic Sectors, and DAX
    • Label Storage Area (LSA)
    • Namespaces
  • Managing NVDIMMs
  • Managing Regions
  • Managing Label Storage Areas (LSA)
  • Managing Namespaces
  • Managing NVDIMM Security
  • NDCTL Man Pages
    • ndctl(1)
    • ndctl-activate-firmware(1)
    • ndctl−check−labels(1)
    • ndctl−check−namespace(1)
    • ndctl−clear−errors(1)
    • ndctl−create−namespace(1)
    • ndctl−destroy−namespace(1)
    • ndctl−disable−dimm(1)
    • ndctl−disable−namespace(1)
    • ndctl−disable−region(1)
    • ndctl−enable−dimm(1)
    • ndctl-enable−namespace(1)
    • ndctl−enable−region(1)
    • ndctl−freeze−security(1)
    • ndctl−init−labels(1)
    • ndctl−inject−error(1)
    • ndctl−inject−smart(1)
    • ndct-list(1)
    • ndctl−load−keys(1)
    • ndctl−monitor(1)
    • ndctl-read-infoblock(1)
    • ndctl−read−labels(1)
    • ndctl−remove−passphrase(1)
    • ndctl−sanitize−dimm(1)
    • ndctl−setup−passphrase(1)
    • ndctl−start−scrub(1)
    • ndctl-update-firmware(1)
    • ndctl-update-passphrase(1)
    • ndctl−wait−overwrite(1)
    • ndctl−wait−scrub(1)
    • ndctl-write-infoblock(1)
    • ndctl−write−labels(1)
    • ndctl−zero−labels(1)
  • DAXCTL Man Pages
    • daxctl(1)
    • daxctl-create-device (1)
    • daxctl-destroy-device (1)
    • daxctl-disable-device (1)
    • daxctl-enable-device (1)
    • daxctl-list(1)
    • daxctl−migrate−device−model(1)
    • daxctl−offline−memory(1)
    • daxctl−online−memory(1)
    • daxctl−reconfigure−device(1)
  • Troubleshooting
  • Glossary
  • Reference Material
Powered by GitBook
On this page
  • NAME
  • SYNOPSIS
  • DESCRIPTION
  • EXAMPLE
  • OPTIONS
  • COPYRIGHT
  • SEE ALSO

Was this helpful?

  1. NDCTL Man Pages

ndctl−start−scrub(1)

Previousndctl−setup−passphrase(1)Nextndctl-update-firmware(1)

Last updated 5 years ago

Was this helpful?

NAME

ndctl−start−scrub − start an Address Range Scrub (ARS) operation

SYNOPSIS

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

DESCRIPTION

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.

EXAMPLE

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

COPYRIGHT

SEE ALSO

Copyright (c) 2016 − 2019, Intel Corporation. License GPLv2: GNU GPL version 2 . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

, ACPI 6.2 Specification Section 9.20.7.2 Address Range Scrubbing (ARS) Overview"

http://gnu.org/licenses/gpl.html
ndctl−wait−scrub(1)
http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Sept29.pdf
NAME
SYNOPSIS
DESCRIPTION
EXAMPLE
OPTIONS
COPYRIGHT
SEE ALSO