Patent ID: 7496823

Claim:
A computer system, comprising: a memory system that stores lines of data in at least one memory module; a controller operably coupled with the memory system, the controller comprising: an error system configured to detect errors in data that has been read from the memory system in response to a first request for the data, the error system maintaining a log of errors detected by the error system, each entry in the log of errors including an identifier that identifies the agent that initiated the request that resulted in each of the errors; a scrub engine configured to initiate a second request for data residing in the memory system, the second request including an agent identifier that identifies the second request as being initiated by the scrub engine, the second request being one of the same or different from the first request; and firmware that controls the scrub engine to test and initialize at least a portion of the memory system during a first operating mode, the firmware controlling the scrub engine to initiate the second request to the memory system for proactively scrubbing at least a portion of the memory system during a second operating mode, the firmware employing the identifier from each entry in the log of errors to differentiate between errors resulting from requests initiated by the scrub engine and errors resulting from requests initiated by other agents.