Using ARM not x86, how do I validated DDR periodic patrol scrubs? The controller is enabled per the hardware spec, nothing in the hardware spec on how to validate periodic patrol scrub for the controller, no registers available to validate, and not aware of a simulation or otherwise that might check if the ECC DDR periodic patrol scrub is working correctly or at all.

Any way to validate on Linux ARM outside of damaging memory, any software means to inject a memory error that the patrol scrub would necessarily fix and that will not immediately be automatically fixed by the memory controller when detected? Controller will detect a correctable error immediately, and correct it so inducing a correctable error doesn't test or validate the patrol scrub necessarily unless there is a way to avoid detection when injected.

Experience suggests that uncorrectable errors will result in a reset long before any periodic scrub occurs. So, these do not seem helpful.


A corrected memory error should turn up in the system log. When nothing turns up there's been no error from either normal use or scrubbing.

Uncorrectable errors need to cause a system panic / reset / shutdown as there's no way to recover gracefully. Scrubbing regularly is supposed to ensure small errors are detected and corrected before growing uncorrectable.

Unless there's a specific method to write to memory without writing the ECC bits there's no way to create an ECC error in software.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.